亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频

? 歡迎來(lái)到蟲(chóng)蟲(chóng)下載站! | ?? 資源下載 ?? 資源專(zhuān)輯 ?? 關(guān)于我們
? 蟲(chóng)蟲(chóng)下載站

?? prediction.cs

?? SVM的一個(gè)源程序
?? CS
字號(hào):
//Copyright (C) 2007 Matthew Johnson

//This program is free software; you can redistribute it and/or modify
//it under the terms of the GNU General Public License as published by
//the Free Software Foundation; either version 2 of the License, or
//(at your option) any later version.

//This program is distributed in the hope that it will be useful,
//but WITHOUT ANY WARRANTY; without even the implied warranty of
//MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
//GNU General Public License for more details.

//You should have received a copy of the GNU General Public License along
//with this program; if not, write to the Free Software Foundation, Inc.,
//51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA.
using System;
using System.IO;
using System.Diagnostics;

namespace SVM
{
    /// <summary>
    /// Class containing the routines to perform class membership prediction using a trained SVM.
    /// </summary>
    public static class Prediction
    {
        /// <summary>
        /// Predicts the class memberships of all the vectors in the problem.
        /// </summary>
        /// <param name="problem">The SVM Problem to solve</param>
        /// <param name="outputFile">File for result output</param>
        /// <param name="model">The Model to use</param>
        /// <param name="predict_probability">Whether to output a distribution over the classes</param>
        /// <returns>Percentage correctly labelled</returns>
        public static double Predict(
            Problem problem,
            string outputFile,
            Model model,
            bool predict_probability)
        {
            int correct = 0;
            int total = 0;
            double error = 0;
            double sumv = 0, sumy = 0, sumvv = 0, sumyy = 0, sumvy = 0;
            StreamWriter output = outputFile != null ? new StreamWriter(outputFile) : null;

            SvmType svm_type = Procedures.svm_get_svm_type(model);
            int nr_class = Procedures.svm_get_nr_class(model);
            int[] labels = new int[nr_class];
            double[] prob_estimates = null;

            if (predict_probability)
            {
                if (svm_type == SvmType.EPSILON_SVR || svm_type == SvmType.NU_SVR)
                {
                    Console.WriteLine("Prob. model for test data: target value = predicted value + z,\nz: Laplace distribution e^(-|z|/sigma)/(2sigma),sigma=" + Procedures.svm_get_svr_probability(model));
                }
                else
                {
                    Procedures.svm_get_labels(model, labels);
                    prob_estimates = new double[nr_class];
                    if (output != null)
                    {
                        output.Write("labels");
                        for (int j = 0; j < nr_class; j++)
                        {
                            output.Write(" " + labels[j]);
                        }
                        output.Write("\n");
                    }
                }
            }
            for (int i = 0; i < problem.Count; i++)
            {
                double target = problem.Y[i];
                Node[] x = problem.X[i];

                double v;
                if (predict_probability && (svm_type == SvmType.C_SVC || svm_type == SvmType.NU_SVC))
                {
                    v = Procedures.svm_predict_probability(model, x, prob_estimates);
                    if (output != null)
                    {
                        output.Write(v + " ");
                        for (int j = 0; j < nr_class; j++)
                        {
                            output.Write(prob_estimates[j] + " ");
                        }
                        output.Write("\n");
                    }
                }
                else
                {
                    v = Procedures.svm_predict(model, x);
                    if(output != null)
                        output.Write(v + "\n");
                }

                if (v == target)
                    ++correct;
                error += (v - target) * (v - target);
                sumv += v;
                sumy += target;
                sumvv += v * v;
                sumyy += target * target;
                sumvy += v * target;
                ++total;
            }
            if(output != null)
                output.Close();
            return (double)correct / total;
        }

        /// <summary>
        /// Predict the class for a single input vector.
        /// </summary>
        /// <param name="model">The Model to use for prediction</param>
        /// <param name="x">The vector for which to predict class</param>
        /// <returns>The result</returns>
        public static double Predict(Model model, Node[] x)
        {
            return Procedures.svm_predict(model, x);
        }

        /// <summary>
        /// Predicts a class distribution for the single input vector.
        /// </summary>
        /// <param name="model">Model to use for prediction</param>
        /// <param name="x">The vector for which to predict the class distribution</param>
        /// <returns>A probability distribtion over classes</returns>
        public static double[] PredictProbability(Model model, Node[] x)
        {
            SvmType svm_type = Procedures.svm_get_svm_type(model);
            if (svm_type != SvmType.C_SVC && svm_type != SvmType.NU_SVC)
                throw new Exception("Model type " + svm_type + " unable to predict probabilities.");
            int nr_class = Procedures.svm_get_nr_class(model);
            double[] probEstimates = new double[nr_class];
            Procedures.svm_predict_probability(model, x, probEstimates);
            return probEstimates;
        }

        private static void exit_with_help()
        {
            Debug.Write("usage: svm_predict [options] test_file model_file output_file\n" + "options:\n" + "-b probability_estimates: whether to predict probability estimates, 0 or 1 (default 0); one-class SVM not supported yet\n");
            Environment.Exit(1);
        }

        /// <summary>
        /// Legacy method, provided to allow usage as though this were the command line version of libsvm.
        /// </summary>
        /// <param name="args">Standard arguments passed to the svm_predict exectutable.  See libsvm documentation for details.</param>
        [Obsolete("Use the other version of Predict() instead")]
        public static void Predict(params string[] args)
        {
            int i = 0;
            bool predictProbability = false;

            // parse options
            for (i = 0; i < args.Length; i++)
            {
                if (args[i][0] != '-')
                    break;
                ++i;
                switch (args[i - 1][1])
                {

                    case 'b':
                        predictProbability = int.Parse(args[i]) == 1;
                        break;

                    default:
                        throw new ArgumentException("Unknown option");

                }
            }
            if (i >= args.Length)
                throw new ArgumentException("No input, model and output files provided");

            Problem problem = Problem.Read(args[i]);
            Model model = Model.Read(args[i + 1]);
            Predict(problem, args[i + 2], model, predictProbability);
        }
    }
}

?? 快捷鍵說(shuō)明

復(fù)制代碼 Ctrl + C
搜索代碼 Ctrl + F
全屏模式 F11
切換主題 Ctrl + Shift + D
顯示快捷鍵 ?
增大字號(hào) Ctrl + =
減小字號(hào) Ctrl + -
亚洲欧美第一页_禁久久精品乱码_粉嫩av一区二区三区免费野_久草精品视频
午夜成人在线视频| 久久av中文字幕片| 日韩亚洲欧美成人一区| 国产精品白丝av| 亚洲第一会所有码转帖| 国产拍欧美日韩视频二区| 欧美性受xxxx| 国产不卡高清在线观看视频| 日韩电影在线观看一区| 亚洲人xxxx| 精品不卡在线视频| 欧美精品一二三四| 91免费国产在线| 国产成人av电影在线观看| 美国一区二区三区在线播放| 一区二区三区在线视频免费 | **性色生活片久久毛片| 欧美一区二区在线不卡| 色婷婷av一区二区三区大白胸| 国产高清在线观看免费不卡| 日本特黄久久久高潮| 亚洲成人午夜影院| 亚洲乱码国产乱码精品精98午夜 | 中文字幕精品一区二区三区精品| 91精品国产全国免费观看| 91黄色在线观看| 波多野结衣的一区二区三区| 国产传媒久久文化传媒| 久久成人免费网| 日本欧美在线观看| 日韩精品电影在线| 午夜欧美电影在线观看| 亚洲永久精品大片| 亚洲免费观看高清完整版在线| 国产精品国产三级国产aⅴ入口| 国产女人18水真多18精品一级做| 久久久久久电影| 久久亚洲一区二区三区明星换脸| 26uuu国产电影一区二区| 日韩欧美在线综合网| 欧美tickling网站挠脚心| 91麻豆精品国产| 91精品国产入口在线| 欧美一级高清大全免费观看| 91精品国产综合久久久久| 欧美日韩国产综合久久| 中文字幕乱码日本亚洲一区二区 | 成人av电影在线| 丰满放荡岳乱妇91ww| 成人av电影免费观看| 99国产精品国产精品毛片| 91亚洲大成网污www| 色综合久久中文综合久久97| 91高清在线观看| 色94色欧美sute亚洲线路二 | 91搞黄在线观看| 欧美日韩精品欧美日韩精品一| 中文字幕制服丝袜一区二区三区| 日本一区二区三区在线观看| 国产成人精品免费在线| 亚洲电影一区二区三区| 日韩午夜激情电影| 欧美日韩高清影院| 91精品国产欧美一区二区成人| 日韩欧美国产一区二区三区| 久久这里只有精品首页| 日韩欧美亚洲国产另类| 在线综合视频播放| 国产精品99久久久久| 国产成人在线视频免费播放| 成人av免费在线观看| 一本色道**综合亚洲精品蜜桃冫| 欧美日韩免费电影| 亚洲精品一区二区三区福利| 欧美国产一区在线| 亚洲午夜三级在线| 麻豆一区二区99久久久久| 国产成人精品一区二| 91麻豆免费看| 欧美一区二区三区婷婷月色 | 欧美疯狂做受xxxx富婆| 精品国内片67194| ...xxx性欧美| 日韩国产在线观看| 91精选在线观看| 国产精品久久久久久久裸模| 午夜不卡在线视频| 成人av电影在线观看| 日韩一区二区高清| ...av二区三区久久精品| 久久精品99国产精品日本| 91网站在线播放| 欧美成人伊人久久综合网| 亚洲欧美一区二区三区国产精品 | 亚洲黄色性网站| 老司机午夜精品| 色婷婷av一区二区三区之一色屋| 久久午夜免费电影| 亚洲国产视频直播| 成人精品视频一区二区三区 | 日韩一区中文字幕| 精品一区二区三区久久| 在线视频欧美区| 中国av一区二区三区| 久久国产成人午夜av影院| 色域天天综合网| 日本一区二区三区在线不卡| 老司机午夜精品99久久| 在线精品视频一区二区三四| 国产精品国产三级国产aⅴ原创| 麻豆久久久久久久| 欧美丰满嫩嫩电影| 亚洲男人电影天堂| 成人免费看片app下载| 日韩一区二区电影在线| 日韩高清电影一区| 在线观看日产精品| 最新不卡av在线| 成人在线综合网| 欧美激情中文不卡| 国产在线播放一区三区四| 日韩一区二区在线观看| 亚洲成人免费在线观看| 91福利国产成人精品照片| 亚洲欧美日韩国产一区二区三区 | 国产河南妇女毛片精品久久久| 一区二区三区精品在线| 不卡欧美aaaaa| 国产精品久久久久久久久快鸭| 国产一区二区成人久久免费影院| 欧美一区二区三区爱爱| 日本大胆欧美人术艺术动态| 正在播放亚洲一区| 日韩中文字幕1| 91精品视频网| 日本不卡一区二区三区 | 色综合久久久久久久久久久| 国产精品久久久久影院老司| 懂色一区二区三区免费观看| 国产亚洲1区2区3区| 国产综合色视频| 国产亚洲精品资源在线26u| 国产原创一区二区三区| 国产片一区二区三区| 国产不卡视频在线播放| 国产精品家庭影院| 色综合久久中文字幕综合网 | 美女视频黄久久| 日韩精品一区二区三区蜜臀| 精品一区二区三区香蕉蜜桃 | 亚洲视频免费在线| 一本大道久久a久久精品综合| 亚洲乱码一区二区三区在线观看| 精品污污网站免费看| 日韩av高清在线观看| 久久综合999| 波多野结衣一区二区三区| 伊人夜夜躁av伊人久久| 欧美酷刑日本凌虐凌虐| 久久66热偷产精品| 国产精品青草久久| 欧美色图在线观看| 久久超碰97中文字幕| 国产欧美精品一区aⅴ影院| 色综合咪咪久久| 日本欧美韩国一区三区| 久久精品在线免费观看| 色吧成人激情小说| 男人的天堂亚洲一区| 精品免费一区二区三区| 久久嫩草精品久久久久| 97精品视频在线观看自产线路二| 午夜视频一区二区三区| 精品成人a区在线观看| 色视频欧美一区二区三区| 日韩av电影天堂| 国产精品久久久久天堂| 欧美精品在线观看播放| 成人福利视频网站| 午夜精品久久久久久久久久| 久久久99免费| 欧美亚洲自拍偷拍| 国产精品亚洲一区二区三区妖精| 一区二区三区四区视频精品免费| 日韩免费视频线观看| 99re视频这里只有精品| 麻豆成人av在线| 一区二区三区毛片| 久久色成人在线| 欧美天堂一区二区三区| 国产99久久久国产精品| 丝袜亚洲另类欧美综合| 亚洲视频在线一区二区| 精品国产精品网麻豆系列| 欧美日韩一级片在线观看| 国产成人av资源| 精品一区二区三区在线视频| 亚洲自拍偷拍麻豆| 国产精品美女久久久久久久久久久| 51午夜精品国产|