Я пытаюсь использовать SVM для классификации новостных статей.
Я создал таблицу, которая содержит функции (уникальные слова, найденные в документах) в виде строк.Я создал отображение векторов веса с помощью этих функций.т. е. если в статье есть слово, которое является частью таблицы векторов объектов, это местоположение помечается как 1
или иначе 0
.
Пример: - Создан обучающий образец ...
1 1: 1 2: 1 3: 1 4: 1 5: 1 6: 1 7: 1 8: 1 9: 1 10: 1 11: 1 12: 1 13: 1 14: 1 15: 1 16: 1 17: 1 18: 1 19: 1 20: 1 21: 1 22: 1 23: 1 24: 1 25: 1 26: 1 27: 1 28: 1 29: 1 30: 1
Поскольку это первый документ, все функции присутствуют.
Я использую 1
, 0
в качестве меток классов.
Я использую svm.Net для классификации.
Я дал 300
весовых векторов, вручную классифицированных как тренировочные данные, и сгенерированная модель принимает все векторы в качестве опорных векторов, что, безусловно, является переобучающим.table) is 7610
.
В чем может быть причина?
Из-за этой перестройки мой проект сейчас находится в довольно плохом состоянии.Он классифицирует каждую статью как положительную.
В двоичной классификации LibSVM есть ли какие-либо ограничения на метку класса?
Я использую 0
, 1
вместо -1
и +1
.Это проблема?