我试图让 Weka 从命令行进行预测,但我担心我可能做错了。我阅读了《数据挖掘》一书并在他们的网站上搜索了文档,但我发现的内容充其量是模糊的,所以我希望你能帮助我。
首先,我创建了一个训练集(train.arff)。这是一个示例:
@relation test
@attribute 'A' {0,1}
@attribute 'B' {0,1}
@attribute 'C' {0,1}
@attribute 'D' {0,1}
@attribute 'E' {0,1}
@attribute 'F' {0,1}
@data
0,0,0,0,0,0
0,0,0,0,0,0
...
然后我创建了要通过预测完成的数据集(test.arff):
@relation test
@attribute 'A' {0,1}
@attribute 'B' {0,1}
@attribute 'C' {0,1}
@attribute 'D' {0,1}
@attribute 'E' {0,1}
@attribute 'F' {0,1}
@data
0,?,0,0,0,0
0,?,0,0,0,0
...
这 ”?” 标记应该预测的属性。
最后,我尝试通过在命令行上运行来获得预测:
java weka.classifiers.trees.J48 -t train.arff -T test.arff -p 0
它产生以下输出:
=== Predictions on test data ===
inst# actual predicted error prediction
1 2:1 2:1 0.939
2 2:1 2:1 0.939
然后,我将预测列中“:”之后的数字用于预测由 inst# 标记的数据行。
以下是我的问题:
这个对吗?我担心“?” 正如我所读到的,它可能是估算的(尽管这可能仅在学习阶段)。
Weka 是否支持多个预测?无论有多少字段标有“?” 我总是得到同一张表,每个实例只有一个预测值。
Weka 可以生成一个完整的(预测的)ARFF 文件,还是我必须自己根据其结果构建这个文件?
如果我遗漏了一些明显的东西,请提前道歉并且任何指向相关文档的指针将不胜感激。
提前致谢!