我正在使用SMO对名义值进行分类。构建分类器后,我需要预测实例的类,但classifyInstance(weka.classifiers.Classifier.classifyInstance)仅返回双数。

如何使用双精度数字获得原始名义等级?

最佳答案

假设您正在Java代码中调用weka类,则需要知道在内部,Weka将所有值都作为double进行处理。

创建Attribute时,将为它传递一个字符串数组,其中列出了可能的标称值。分类返回的double是原始数组中所选属性的索引。因此,如果您的代码如下所示:

String[] attributeValues = {"a", "b", "c"};
Attribute a = new Attribute("attributeName", attributeValues);


并且classifyInstance()返回2,那么它选择的类将是attributeValues[2]或“ c”。

关于machine-learning - 预测SMO的名义值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/10726891/

10-12 22:44