日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

svmtest

發(fā)布時間:2025/7/14 编程问答 25 豆豆
生活随笔 收集整理的這篇文章主要介紹了 svmtest 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

svmtest

Classifier m_classifier = new LibSVM();

使用父類 分類器 實例化svm類

ArffLoader atf = new ArffLoader();

arff文件裝載器

裝載arff分兩種,第一種訓(xùn)練模型用的訓(xùn)練文件,第二種測試模型用的測試文件,這里訓(xùn)練文件為test,測試文件為test2

atf.setFile(inputFile);

arff文件裝載器,第一步設(shè)置文件路徑,然后使用getDataSet()方法獲取文件中的數(shù)據(jù)集合,數(shù)據(jù)集合放在weka自定義的數(shù)據(jù)結(jié)構(gòu)Instances中

Instances instancesTrain = atf.getDataSet();

數(shù)據(jù)集.numAttributes()獲取數(shù)據(jù)集的列數(shù)
數(shù)據(jù)集.numInstances()獲取數(shù)據(jù)集的行數(shù)

instancesTrain.setClassIndex(instancesTrain.numAttributes()-1);

獲取數(shù)據(jù)集后,需要設(shè)置數(shù)據(jù)集中的指針,將其指向數(shù)據(jù)集中列的最后一位。因為調(diào)用算法處理時,算法只會處理指針范圍內(nèi)的列,也就是說,如果一張表有50列,指針指向8,那么算法只會處理1-8,具體到數(shù)據(jù)中的下標,就是0-7,這也是需要獲取列數(shù)后-1的原因。

m_classifier.buildClassifier(instancesTrain); //訓(xùn)練

調(diào)用算法,輸入數(shù)據(jù)集,通過數(shù)據(jù)訓(xùn)練形成模型

m_classifier.classifyInstance(instancesTest.instance(i))

分類器給定的實例測試方法,輸入單條數(shù)據(jù),返回0 1


固定代碼塊

輸出arff文件

//設(shè)置輸出文檔路徑
File file2=new File("E://java//test.arff");
//實例化操作類
ArffSaver saver=new ArffSaver();
//獲取數(shù)據(jù)源
saver.setInstances(dataInsatnces);
//建立輸出文件
saver.setFile(file2);
//打印數(shù)據(jù)源數(shù)據(jù)到目標文件
saver.writeBatch();


zk.classifiers.Classifier cModel = new zk.classifiers.bayes.NaiveBayes();

cModel.buildClassifier(dataInsatnces);

//4.測試分類器
??
Evaluation eTest = new Evaluation(dataInsatnces);

eTest.evaluateModel(cModel, dataInsatnces);
??
//打印測試結(jié)果
System.out.println(eTest.toSummaryString());

?


logistic.java

建立模型函數(shù)
buildClassifier(Instances train)

獲取測試類的實例化對象,在調(diào)用測試方法來測試傳入的數(shù)據(jù)集
getCapabilities().testWithFail(train);

將數(shù)據(jù)集中,所有有缺失數(shù)據(jù)的記錄刪除,自帶的清洗功能
train = new Instances(train);
train.deleteWithMissingClass();


獲取過濾規(guī)則
m_ReplaceMissingValues = new ReplaceMissingValues();

設(shè)定過濾規(guī)則對象
m_ReplaceMissingValues.setInputFormat(train);

靜態(tài)過濾器裝載過濾對象及過濾規(guī)則
train = Filter.useFilter(train, m_ReplaceMissingValues);

?

?

?

?

?

?

?

?

?

?

轉(zhuǎn)載于:https://www.cnblogs.com/Anroam/p/3302909.html

總結(jié)

以上是生活随笔為你收集整理的svmtest的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。