-1
所以我有一个训练和测试集,它们包含多值标称值。只要我需要训练&测试NaiveBayesMultinomial分类,不支持多值标称值,我做了以下内容:Weka NominalToBinary使测试和训练集不兼容
java weka.filters.supervised.attribute.NominalToBinary -i train.arff -o train_bin.arff -c last
java weka.filters.supervised.attribute.NominalToBinary -i test.arff -o test_bin.arff -c last
然后我运行此:
java weka.classifiers.bayes.NaiveBayesMultinomial -t train_bin.arff -T test_bin.arff
而下面错误出现了:
Weka exception: Train and test files not compatible!
据我了解后,我检查这两个文件.arff,他们成了不兼容后我跑NominalToBinary,因为训练和测试本身ts是不同的,因此生成不同的二元变量。
是否有可能以设置保持兼容的方式执行NominalToBinary转换?
什么分类器能够处理多值名义? 我该如何连接,然后以相同的方式拆分它们? – bazzilic 2012-03-24 13:36:46
我不使用分类或Weka很多,所以我不能告诉你细节。只是你总是应该正常化(包括二进制转换)测试和训练数据完全相同的方式。通常,在预处理之后进行拆分。 – 2012-03-24 17:00:09