Я пытаюсь подготовить линейный SVM к данным, имеющим 100 измерений. У меня 80 тренировок. Я тренирую SVM с помощью функции fitcsvm
в MATLAB и проверяю функцию с использованием predict
данных обучения. Когда я классифицирую данные обучения с помощью SVM, все точки данных классифицируются только в один класс.Функция предсказания Matlab не работает
SVM = fitcsvm(votes,b,'ClassNames',unique(b)');
predict(SVM,votes);
Это дает выходы как все 0, что соответствует 0-му классу. b
содержит 1 и 0, указывающие класс, к которому принадлежит каждая точка данных. Данные, используемый, т.е. матрицы votes
и векторное b
приведен следующие link
Конечно, вы не можете обучить SVM с использованием 100 классов только с 80 тренировочных очков. – Adriaan
@Adriaan Thanx мелочи просто избегают внимания – Aditya
@Adriaan выглядит как b, содержит только два класса, 80 - размер набора для обучения, а 100 - тусклый. – gregswiss