Классификационный балл: SVM

Я использую libsvm для многоклассовой классификации. Как я могу прикрепить оценки классификации, чтобы сравнить достоверность классификации с выводом для данной выборки в виде:

Class 1: score1

Class 2: score2

Class 3: score3

Class 4: score4

person Xolve    schedule 18.06.2011    source источник
comment
Мне не нужен один идентификатор класса в качестве вывода классификации. Скорее вывод должен быть таким: данный образец может быть отнесен к классу 1 с показателем вероятности 1.   -  person Xolve    schedule 18.06.2011


Ответы (2)


Вы можете сначала использовать подход «один против всех» и рассматривать их как классификацию 2 классов, имея параметр значения решения в libSVM. Это достигается за счет того, что каждый класс является положительным классом, а остальная часть класса - отрицательным для каждой классификации.

Затем сравните значения решения результатов, чтобы классифицировать образцы. Например, вы можете назначить образец классу, который имеет самые высокие значения решения. Например, выборка 1 имеет значение решения 0,54 для класса 1, 0,64 для класса 2, 0,43 для класса 3 и 0,80 для класса 4, тогда вы можете отнести его к классу 4.

Вы также можете использовать значения вероятности для классификации вместо значений функции принятия решения, используя параметр -b в libSVM.

Надеюсь это поможет..

person Mullaly    schedule 19.06.2011
comment
Нормирование расстояния до гиперплоскости не всегда является хорошим показателем вероятности принадлежности к классу. См. эту статью, написанную Zadrozny и Elkan. - person David C; 03.08.2012

Другой вариант — использовать пакет LIBLINEAR, который внутренне реализует стратегию «один против всех» для решения проблемы с несколькими классами. В LIBSVM эта реализация основана на стратегии «один против одного».

person Ayan    schedule 12.02.2012