Я использую libsvm с предварительно вычисленными ядрами. Я сгенерировал предварительно вычисленный файл ядра для примера набора данных heart_scale и выполнил функцию svmtrain()
. Он работал правильно, и опорные векторы определялись правильно, т.е. аналогично стандартным ядрам.
Однако, когда я пытаюсь запустить svmpredict()
, он дает другие результаты для предварительно вычисленного файла модели. Покопавшись в коде, я заметил, что функция svm_predict_values()
требует реальных характеристик опорных векторов, которые недоступны в режиме предварительного вычисления. В режиме предварительного вычисления у нас есть только коэффициент и индекс каждого опорного вектора, который ошибочно принимается за его особенности с помощью svmpredict()
.
Это проблема или я что-то упустил?
(Пожалуйста, дайте мне знать, как запустить svmpredict()
в режиме предварительного вычисления.)