Я пытаюсь сравнить несколько методов ML, сравнивая классификацию спам-писем.До сих пор я успешно установил простую Feedforward и сеть Элмана.
Я сейчас пытаюсь протестировать SVM, и что бы я ни пытался, он просто останавливается после одной итерации с ошибкой 0,0%.
Я создаю метод / трейнер и тренировку следующим образом:
SVM svm = new SVM(24, false); // 24 features, classification
SVMTrain train = new SVMTrain(svm, data);
do {
train.iteration();
System.out.println("Training SVM, Epoch #" + train.getIteration() + " Error: " + train.getError());
} while (train.getError() > 0.1);
Это приводит к выводу:
Обучение SVM, Epoch # 0 Ошибка: 0.0
Я также пытался использовать MLMethodFactory / MLTrainFactory для создания SVM / тренера с тем же результатом.
Входными данными является CSVNeuralDataSet.Я почти уверен, что это проблема, но я не уверен, как ее исправить.Может быть, VersatileMLDataSet, но тогда я считаю, что мне нужно использовать EncogMethod и нормализовать его таким образом, а не с помощью Analyst?Разъяснение приветствуется!