java – 使用StratifiedRemoveFolds示例在weka中创建训练和测试集
作者:互联网
我试图从命令行使用weka运行一些分类.在此链接weka-Primer-commandline中,有以下用于创建测试和培训集的示例:
java weka.filters.supervised.instance.StratifiedRemoveFolds -i data/soybean.arff -o soybean-train.arff \
-c last -N 4 -F 1 -V
java weka.filters.supervised.instance.StratifiedRemoveFolds -i data/soybean.arff -o soybean-test.arff \
-c last -N 4 -F 1
这段代码是否应该为训练提供3/4的数据,为测试集提供1/4的数据?对我来说,似乎只有一部分整个数据(从最后因为-V而来)将被分配用于训练,而只有1倍用于测试.我对吗?我需要3/4数据用于训练,1/4用于测试.
解决方法:
文档中的代码是正确的,并将3/4的数据放入列车组中,将1/4的数据放入测试集中.选项意味着以下内容:
> -N:应该有4个折叠,这意味着数据被分成4个相等的非重叠部分
> -F:应选择这些部件/折叠中的第一个
> -V:反转选择
所以创建火车组的第一行工作如下:
>创建4折
>选择第一个折叠并取相反的结果,选择剩余的3折,即3/4的数据
仅通过选择第一个折叠(即1/4数据)来创建测试.
标签:java,machine-learning,classification,weka 来源: https://codeday.me/bug/20190901/1786663.html