Я не использовал Weka в оболочке Windows, но вы можете сделать это в Linux следующим образом:
#!/bin/bash
export CLASSPATH=/home/stalai/Weka/weka-3-9-1/weka.jar:.
echo $CLASSPATH
# Code that loops through various classification routines and saves the results in a corresponding text file
# Defult values
CV=103 # Cross Validation: change to 10 or keep leave one out cross validation [change by (-x)]
files=dataset.csv # Look at the required .csv files and process them
for i in {100..10};
do
java weka.classifiers.meta.AttributeSelectedClassifier -t $files -x $CV >> $CorAttEvalResults -E "weka.attributeSelection.CorrelationAttributeEval " -S "weka.attributeSelection.Ranker -T -1.7976931348623157E308 -N $i" -W weka.classifiers.lazy.IBk -- -K 1 -W 0 -A "weka.core.neighboursearch.LinearNNSearch -A \"weka.core.EuclideanDistance -R first-last\""
done
В этом примере мы исключаем первые 100 функций до 10, используя средство ранжирования объектов на основе корреляции, и сохраняем результаты в CorAttEvalResults после проверки по принципу «оставь один раз». CV = 103 влияет на общее количество классов в файле dataset.csv.
После того, как вы выяснили желаемую модель, измените соответствующие значения флага и перезагрузите модель. Дайте мне знать, если вам нужна дополнительная помощь!
Также я бы порекомендовал использовать CSV вместо Arff, так как кроссплатформенность легче обрабатывать, если вы хотите расширить свой код или что-то в этом роде.