朴素贝叶斯分类器进行10轮交叉测试
来源:互联网 发布:网站源码可以导出来吗 编辑:程序博客网 时间:2024/05/21 13:55
import java.io.File;
import weka.classifiers.Classifier;
import weka.classifiers.Evaluation;
import weka.classifiers.bayes.NaiveBayes;
import weka.core.converters.ArffLoader;
import weka.core.Instance;
import weka.core.Instances;
import weka.core.converters.ArffSaver;
import weka.core.converters.CSVLoader;
public class NaiveBayesTest {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
String filename="C:\\Users\\PC\\Desktop\\breast-cancer-wisconsin.csv";
String savearff = "C:\\Users\\PC\\Desktop\\breast-cancer-wisconsin.arff";
CSVLoader csv =new CSVLoader();
csv.setSource(new File(filename));
Instances datasrc = csv.getDataSet();
ArffSaver saver = new ArffSaver();
saver.setInstances(datasrc);
saver.setFile(new File(savearff));
saver.writeBatch();
ArffLoader arffloader = new ArffLoader(); //Reads a source that is in arff (attribute relation file format) format.
File inputFile = new File("C:\\Users\\PC\\Desktop\\breast-cancer-wisconsin.arff");//读入训练文件
arffloader.setFile(inputFile);
Instances wisconsin = arffloader.getDataSet(); // 得到格式化的训练数据
wisconsin.setClassIndex(wisconsin.numAttributes()-1);//设置分类属性所在行号(第一行为0号),instancesTrain.numAttributes()可以取得属性总数
Classifier cfs = null;
cfs = (Classifier) Class.forName(
"weka.classifiers.bayes.NaiveBayes").newInstance();
// 使用训练样本进行分类
cfs.buildClassifier(wisconsin);
// 使用测试样本测试分类器的学习效果
Instance testInst;
Evaluation testingEvaluation = new Evaluation(wisconsin);
int length = wisconsin.numInstances();
for(int j=0;j<10;j++){
for (int i = 0; i < length; i++) {
testInst = wisconsin.instance(i);
testingEvaluation.evaluateModelOnceAndRecordPrediction(cfs,testInst);
}
System.out.println("分类的正确率" + (1 - testingEvaluation.errorRate()));
}
// 打印分类结果
}
}
import weka.classifiers.Classifier;
import weka.classifiers.Evaluation;
import weka.classifiers.bayes.NaiveBayes;
import weka.core.converters.ArffLoader;
import weka.core.Instance;
import weka.core.Instances;
import weka.core.converters.ArffSaver;
import weka.core.converters.CSVLoader;
public class NaiveBayesTest {
public static void main(String[] args) throws Exception {
// TODO Auto-generated method stub
String filename="C:\\Users\\PC\\Desktop\\breast-cancer-wisconsin.csv";
String savearff = "C:\\Users\\PC\\Desktop\\breast-cancer-wisconsin.arff";
CSVLoader csv =new CSVLoader();
csv.setSource(new File(filename));
Instances datasrc = csv.getDataSet();
ArffSaver saver = new ArffSaver();
saver.setInstances(datasrc);
saver.setFile(new File(savearff));
saver.writeBatch();
ArffLoader arffloader = new ArffLoader(); //Reads a source that is in arff (attribute relation file format) format.
File inputFile = new File("C:\\Users\\PC\\Desktop\\breast-cancer-wisconsin.arff");//读入训练文件
arffloader.setFile(inputFile);
Instances wisconsin = arffloader.getDataSet(); // 得到格式化的训练数据
wisconsin.setClassIndex(wisconsin.numAttributes()-1);//设置分类属性所在行号(第一行为0号),instancesTrain.numAttributes()可以取得属性总数
Classifier cfs = null;
cfs = (Classifier) Class.forName(
"weka.classifiers.bayes.NaiveBayes").newInstance();
// 使用训练样本进行分类
cfs.buildClassifier(wisconsin);
// 使用测试样本测试分类器的学习效果
Instance testInst;
Evaluation testingEvaluation = new Evaluation(wisconsin);
int length = wisconsin.numInstances();
for(int j=0;j<10;j++){
for (int i = 0; i < length; i++) {
testInst = wisconsin.instance(i);
testingEvaluation.evaluateModelOnceAndRecordPrediction(cfs,testInst);
}
System.out.println("分类的正确率" + (1 - testingEvaluation.errorRate()));
}
// 打印分类结果
}
}
0 0
- 朴素贝叶斯分类器进行10轮交叉测试
- 使用朴素贝叶斯分类器进行文档分类
- 朴素贝叶斯分类sparkmllib测试
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- 朴素贝叶斯分类器
- BootStrap-CSS选项大全
- zynq CPU亲和性的利用:网络性能
- ES5.0——Update API
- 51nod 1272 最大距离 By Assassin
- AT&T与INTER汇编格式解析
- 朴素贝叶斯分类器进行10轮交叉测试
- c# 字符串中某个词出现的次数及索引
- Maven--打包的技巧
- RGB颜色查询对照表
- 一位文笔很好的作家--简媜
- Android FFMpeg 视频处理相关
- Android实战——okhttp3的使用和封装
- codeforces733A.Grasshopper And the String
- Android 调试命令