【问题标题】:Split a file into a test file and a training file using Weka使用 Weka 将文件拆分为测试文件和训练文件
【发布时间】:2014-04-26 07:54:37
【问题描述】:

我找到了以下代码,它将示例分配为 75% 的训练数据和 25% 的测试数据:

java weka.filters.supervised.instance.StratifiedRemoveFolds -i full.arff -o train.arff -c last -N 4 -F 1 -V
java weka.filters.supervised.instance.StratifiedRemoveFolds -i full.arff -o test.arff -c last -N 4 -F 1

但是,我需要拆分数据,使 70% 用于训练,30% 用于测试。

我该怎么做?

我不希望拆分随机化。

【问题讨论】:

  • “随机分割”是什么意思?
  • 特征向量在分裂前不要乱序排列

标签: java command-line weka


【解决方案1】:

根据他们的JavaDoc,一种可能(虽然有点笨拙)是使用10 折叠,然后将 3 个片段合并在一起进行测试,并将 7 个片段合并在一起进行训练。

java weka.filters.supervised.instance.StratifiedRemoveFolds -i full.arff -o piece1.arff -N 10 -F 1    
java weka.filters.supervised.instance.StratifiedRemoveFolds -i full.arff -o piece2.arff -N 10 -F 2
...
java weka.filters.supervised.instance.StratifiedRemoveFolds -i full.arff -o piece10.arff -N 10 -F 10

合并以构建测试集:

java weka.core.Instances append piece1.arff piece2.arff > temp.arff
java weka.core.Instances append temp.arff piece3.arff > test.arff 

合并的文档是here

您当然可以在命令行的for 循环中执行上述步骤,但我不确定您使用的是哪个平台。

【讨论】:

    猜你喜欢
    • 2012-03-31
    • 2015-09-15
    • 1970-01-01
    • 2021-12-08
    • 2014-11-25
    • 2014-01-31
    • 1970-01-01
    • 2020-11-13
    • 2019-07-22
    相关资源
    最近更新 更多