Итак, у меня есть наборы для обучения и тестирования, и они содержат многозначные номинальные значения. Пока мне нужно обучить и протестировать классификатор NaiveBayesMultinomial, который не поддерживает многозначные номинальные значения, я делаю следующее:
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, поскольку наборы train и test отличаются, и, следовательно, генерируются разные двоичные переменные.
Можно ли выполнить преобразование NominalToBinary так, чтобы наборы оставались совместимыми?