Чи несприятливий набір тренувань негативно впливає на SVM?


12

Я намагаюся класифікувати повідомлення на різні категорії за допомогою SVM. Я склав список бажаних слів / символів із навчального набору.

Для кожного вектора, який представляє повідомлення, я встановлюю відповідний рядок, 1якщо слово є таким:

"корпус" є: [Мері, маленький, баранина, зірка, мерехтіння]

перше повідомлення: "у Мері було трохи ягняти" -> [1 1 1 0 0]

друге повідомлення: "мерехтить маленька зірка" -> [0 1 0 1 1]

Я думаю, що це досить поширене налаштування з SVM, але моє запитання полягає в тому, що з тисячами слів у наборі, що робити, якщо на повідомлення з’являються лише 1-2 слова на повідомлення? Чи буде лінійна залежність мого набору навчальних векторів негативно впливати на здатність алгоритму конвергуватися?


1
У вас багато даних, але мало мічених даних? Якщо так, то, можливо, ви хочете зайнятися навчанням з нагляду під наглядом. Використання деяких неозначених даних повинно як підвищити точність, так і зменшити ризик перевитрати.
нейрон

@neuron Я думав про це. Що є прикладом напівнагляденої архітектури?
jonsca

1
Я використовував лише "хакітські" методи напівконтролю (він же модель поїздів на наборі тренувань, використовуйте модель для прогнозування даних, витягуйте всі дані з ймовірністю передбачення> 0,5 і зливайтеся з набором тренувань, і створюйте моль на новому наборі тренувань). Але я бачив, як flexmix згадував декілька місць (див. Cran.r-project.org/web/packages/flexmix )
нейрон

@neuron Добре, добре, тому що статті, які я бачив (хоча і з швидким пошуком у вікіпедії) не були дуже специфічними щодо архітектури. Я перевірю flexmix- хоча я вже кілька років маю "Learn R" у своєму календарі!
jonsca

Зробіть це, R дивно, бібліотеки, які стають доступними для вас, просто хизуються. Такі речі, як caret, sqldf / rmysql, foreach (паралельно), ggplot2 та googlevis - просто надзвичайно корисні інструменти. Спочатку я не був прихильником цієї мови, але вона виросла на мені, і я зараз абсолютно люблю її використовувати.
нейрон

Відповіді:


9

Розрідженість та лінійна залежність - це дві різні речі. Лінійна залежність передбачає, що деякі функції векторів є простими кратними інших функцій векторів (або те саме, що застосовується до прикладів). У описаних вами налаштуваннях я думаю, що лінійна залежність малоймовірна (це означає, що два терміни мають однакову частоту (або їх кратні) для всіх документів). Просто наявність обмежених можливостей не представляє жодних проблем для SVM. Один із способів переконатися в тому, що ви можете зробити випадкове обертання осей координат, що залишило б проблему незмінною і дало би те саме рішення, але зробило б дані зовсім нечисленними (це частково працює як випадкові прогнози) ).

Також виявляється, що ви говорите про SVM в первісному . Зауважте, що якщо ви використовуєте SVM ядра, тільки те, що у вас є розріджений набір даних, не означає, що матриця ядра буде розрідженою. Однак це може бути низького рангу. У такому випадку ви можете фактично скористатися цим фактом для більш ефективної підготовки (див., Наприклад, Ефективне навчання svm з використанням представлень ядра низького рангу ).


1
Правда, я був трохи швидкий і розкутий зі своєю термінологією. Має сенс.
jonsca
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.