Nauka Weka na linii poleceń

Jestem całkiem nowy w Weka i jeszcze bardziej nowy w Weka w linii poleceń. Uważam, że dokumentacja jest słaba i staram się znaleźć kilka rzeczy do zrobienia. Na przykład, chcesz wziąć dwa pliki .arff, jeden do szkolenia, jeden do testowania i uzyskać wyniki prognoz dla brakujących etykiet w danych testowych.

Jak mogę to zrobić?

Mam ten kod jako blok początkowy

java -classpath weka.jar weka.classifiers.meta.FilteredClassifier
-t "training_file_with_missing_values.arff"
-T "test_file_with_missing_values.arff"
-F weka.filters.unsupervised.attribute.ReplaceMissingValues -- -c last
-W weka.classifiers.functions.MultilayerPerceptron -- -L 0.3 -M 0.2 -H a

Uruchomienie tego kodu daje mi „Niedozwoloną opcję -c last” i nie jestem pewien dlaczego. Nie zamierzam też korzystać z MLP, ponieważ NN ma tendencję do bycia zbyt wolnymi, gdy mam kilka tysięcy funkcji z danych tekstowych. Wiem jednak, jak zmienić go na inny klasyfikator (np. NB lub libSVM, aby był dobry).

Ale nie jestem pewien, jak dodać wiele filtrów w jednym wywołaniu, ponieważ muszę także dodać filtr StringToWordVector (i ewentualnie filtr Reorder, aby uczynić klasę ostatnią, zamiast pierwszego atrybutu).

A potem, jak mogę sprawić, że wyśle ​​mi etykiety predykcyjne każdej klasy? A następnie zapisz te w arfie z danymi początkowymi.

questionAnswers(2)

yourAnswerToTheQuestion