Weka中Class属性的名义值的排序

时间:2012-07-31 11:12:49

标签: machine-learning data-mining weka svm

在创建训练集期间,我按照在WEKA中创建测试集时输入的顺序输入“true”和“false”。这些名义值用于class属性。

当我运行分类器时,我不知何故觉得结果看起来好像在测试集中是相反的。

我的问题是,如果训练集中的第一行显示类值为“False”,并且如果训练模型在测试集上的SVM分类器中使用,则表示返回的分类类是否为0 ,我应该认为它是假的吗?

由于 Abhishek S

2 个答案:

答案 0 :(得分:2)

如果在两个数据集(训练和测试)中以相同顺序定义名义属性。 输出的顺序相同。

标称值编码为“double”。 所以如果你写了:{false,true} => “false”= 0.0且“true”= 1.0。

答案 1 :(得分:0)

Here是weka文档的摘录。

  

classifyInstance返回的double值(或者是   由distributionForInstance返回的数组)只是该索引   属性中的字符串值。也就是说,如果你想要字符串   clsLabel上面返回的类标签的表示,然后是你   可以这样打印:

System.out.println(clsLabel + " -> " + unlabeled.classAttribute().value((int) clsLabel));