Поддерживает ли машина опорных векторов несбалансированный набор данных?

14

SVM обрабатывает несбалансированный набор данных? Это какие-либо параметры (например, C или стоимость неправильной классификации), обрабатывающие несбалансированный набор данных?

RockTheStar
источник
1
Что делает набор данных "несбалансированным"?
whuber
1
@whuber набор классификационных данных с широко варьирующейся распространенностью классов часто называют несбалансированными.
Марк Клазен
1
@Marc Это может быть правдой в целом, но это смутное понятие. Сколько это "в значительной степени меняется"? Почему это должно иметь значение, кроме определенных особых обстоятельств? Я считаю, что для нас важно понять, что автор этого вопроса подразумевает под «несбалансированным», вместо того, чтобы принимать чье-то разумное предположение о предполагаемом значении.
whuber
@whuber несбалансированные наборы данных - это общая концепция машинного обучения. С точки зрения приложений из-за, например, обнаружения спама и т. Д. Возможно, из-за преобладания алгоритмов, нацеленных на ошибку ошибочной классификации вместо вероятности. Это, в свою очередь, затрудняет взвешивание ошибки.
seanv507
2
Спасибо, @seanv, за разъяснения. Терминологическая проблема, по-видимому, заключается в том, что «дескрипторы» не относятся к «могут быть применены», а скорее подразумевают установку, в которой (1) существует класс, который находится в таком меньшинстве, на его эффективность прогнозирования может сильно влиять присутствие других классов, в то время как (2) точный прогноз для класса меньшинства представляет интерес. В этом смысле «несбалансированный набор данных» является довольно неполным описанием проблемы, но, поскольку термин, по-видимому, приобрел некоторую валюту, жаловаться бессмысленно.
whuber

Ответы:

18

Для несбалансированных наборов данных мы обычно меняем штраф за неправильную классификацию для каждого класса. Это называется взвешенным по классу SVM, что сводит к минимуму следующее:

minw,b,ξi=1Nj=1Nαiαjyiyjκ(xi,xj)+CposiPξi+CnegiNξi,s.t.yi(j=1Nαjyjκ(xi,xj)+b)1ξi,i=1Nξi0,i=1N

PNC

Этот подход был введен довольно рано, он упоминается, например, в статье 1997 года:

Эдгар Осуна, Роберт Фрейнд и Федерико Джироси. Машины опорных векторов: обучение и применение. Технический отчет AIM-1602, 1997. ( pdf )

Cpos=2CnegC=Cneg

Марк Клазен
источник
Хорошо, спасибо! В дополнение к этому, справляется ли логистическая регрессия, Navie Bayes, дерево решений с такой проблемой дисбаланса?
RockTheStar
логистическая регрессия, безусловно, делает, вы просто по-разному оцениваете вероятность положительных и отрицательных паттернов.
Дикран Marsupial
Логистическая регрессия и SVM обеспечивают внутренние пути. Я не знаю наизусть всех этих других методов, но передискретизация класса меньшинства работает практически для каждого метода (хотя это не совсем математически элегантно).
Марк Клазен
1
Круто, спасибо @Dikran. Марк: да, простая избыточная выборка работает в общем. Однако это зависит от ситуации. В результате вы добавляете «весовые коэффициенты» к данным меньшинства, когда вы передискретизируете меньшинство (снова и снова реплицируйте точки меньшинства в одних и тех же местах). Это существенно помогает улучшить «рассмотрение» примера меньшинства. Тем не менее, граница принятия решения классификации станет довольно напряженной (недостаточно общей), то есть может произойти переопределение). Поэтому нам, возможно, придется рассмотреть некоторые вероятностные методы выборки, такие как SMOTE.
RockTheStar
10

SVM могут работать с наборами данных с несбалансированными частотами классов. Многие реализации позволяют иметь различное значение штрафа за слабину (C) для положительных и отрицательных классов (что асимптотически эквивалентно изменению частот классов). Я бы порекомендовал установить значения этих параметров, чтобы максимизировать производительность обобщения на тестовом наборе, где частоты классов соответствуют ожидаемым при работе.

Я был одним из многих людей, которые писали статьи на эту тему, вот мои , я посмотрю, смогу ли я найти что-то более новое / лучшее. Попробуйте Веропулос, Кэмпбелл и Кристианини (1999).

Дикран Сумчатый
источник
Дикран, почему он только асимптотически эквивалентен ... конечно, он точно эквивалентен разному взвешиванию ошибок класса?
seanv507
Это в точности эквивалентно взвешиванию ошибок класса, но это не то же самое, что повторная выборка данных (для начала веса постоянно изменяются, но данные дискретны). Это один из асимптотических результатов ожидания (которые не кажутся особенно полезными в большинстве случаев).
Дикран Marsupial