gpt4 book ai didi

machine-learning - 告诉 Weka 在 ARFF 文件中预测哪些属性?

转载 作者:行者123 更新时间:2023-11-30 08:44:27 25 4
gpt4 key购买 nike

我试图让 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# 标记的数据行。

这是我的问题:

  1. 这是正确的吗?我担心“?”据我所知,它可能会被估算(尽管这可能仅在学习阶段)。

  2. Weka 支持多重预测吗?无论有多少个字段标有“?”我总是得到同一张表,每个实例只有一个预测值。

  3. Weka 可以生成完整的(预测的)ARFF 文件,还是我必须根据其结果自己构建该文件?

如果我错过了一些明显的东西,请提前道歉并提供相关文档的任何指示,我们将不胜感激。

提前致谢!

最佳答案

“?”是未知值的通用标记。它可用于训练和测试数据,并告诉 Weka 在这种特殊情况下,该值不可用。然后如何处理该信息取决于实际的学习算法。所以回答你的问题:

  1. 没有。通过 -c 参数训练模型时指定要预测的属性。该参数给出了要预测的属性的索引。默认情况下,它是最后一个,因此在您的情况下为“F”。
  2. 没有。这实际上更多的是实现的学习算法的问题,但 Weka 中没有一个支持这一点。方法是针对不同的预测训练多个模型。
  3. 在这种情况下这没有意义,因为您必须提供已知值,Weka 才能评估分类器的准确性。如果这些值完全未知,则无法判断它有多好。

请注意,您可以 save a trained model然后use it to make predictions 。后一页还包含您可以构建的知识流,以将结果保存为 ARFF 文件。

关于machine-learning - 告诉 Weka 在 ARFF 文件中预测哪些属性?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20637877/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com