Java 如何在WEKA API中查看所有分类实例
我想查看我的分类实例 我试过这样的方法:Java 如何在WEKA API中查看所有分类实例,java,classification,weka,prediction,Java,Classification,Weka,Prediction,我想查看我的分类实例 我试过这样的方法: for(int i = 0; i < dataSet.size(); i++) { double pred = nowy.classifyInstance(dataSet.instance(i)); double actual = dataSet.instance(i).classValue(); double[] dist = nowy.distributionForInstance(dataSet.instance(i)
for(int i = 0; i < dataSet.size(); i++) {
double pred = nowy.classifyInstance(dataSet.instance(i));
double actual = dataSet.instance(i).classValue();
double[] dist = nowy.distributionForInstance(dataSet.instance(i));
if (pred != actual)
{
System.out.print((i+1));
System.out.print(" - ");
System.out.print(dataSet.instance(i).toString(dataSet.classIndex()));
System.out.print(" - ");
System.out.print(dataSet.classAttribute().value((int) pred));
System.out.print(" - ");
if (pred != dataSet.instance(i).classValue())
System.out.print("no");
else
System.out.print("yes");
System.out.println();
}
}
for(int i=0;i
但是,由于正确/错误分类的实例数量与统计输出不同,因此它似乎不能很好地工作。您还可以使用WEKA API中提供的评估类一次性测试所有实例
Instances trainData = ds.getDataset(); //get training dataset
SMO sm = new SMO(); //build classifier
sm.buildClassifier(data); //train classifier
Instances testData = ds.getDataSet(); //now get the test set
Evaluation eval = new Evaluation(data); //for recording results
eval.evaluateModel(sm, testData);
System.out.println(eval.toMatrixString()); //gives the confusion matrix for predictions