Мне приходится иметь дело с проблемой классификации текста. Сканер сканирует веб-страницы определенного домена, и для каждой веб-страницы я хочу выяснить, принадлежит ли он только одному конкретному классу или нет. То есть, если я назову этот класс " Позитивным" , каждая просканированная веб-страница принадлежит либо к классу " Позитив", либо к классу " Не позитив" .
У меня уже есть большой обучающий набор веб-страниц для класса Позитив . Но как создать тренировочный набор для класса Non-Positive, который будет максимально представительным? Я имею в виду, я мог бы использовать все и вся для этого класса. Могу ли я просто собрать несколько произвольных страниц, которые определенно не принадлежат классу Positive ? Я уверен, что эффективность алгоритма классификации текста (я предпочитаю использовать алгоритм Наивного Байеса) сильно зависит от того, какие веб-страницы я выберу для класса Non-Positive .
Так что мне делать? Может кто-нибудь дать мне совет? Большое спасибо!
источник
Ответы:
EM алгоритм Spy решает именно эту проблему.
Основная идея состоит в том, чтобы объединить ваш положительный набор с целой кучей случайно сканированных документов. Сначала вы рассматриваете все просканированные документы как отрицательный класс и изучаете наивный байесовский классификатор на этом наборе. Теперь некоторые из этих просканированных документов будут на самом деле положительными, и вы можете консервативно перемаркировать любые документы, которые получили более высокий балл, чем самый положительный положительный документ. Затем вы повторяете этот процесс, пока он не стабилизируется.
источник
Вот хороший тезис об одноклассной классификации:
Этот тезис знакомит с методом описания опорных векторных данных (SVDD), машиной опорных векторов одного класса, которая находит минимальную гиперсферу вокруг данных, а не гиперплоскость, разделяющую данные.
В диссертации также рассматриваются другие одноклассные классификаторы.
источник
Хорошее обучение требует данных, которые обеспечивают хорошие оценки вероятностей отдельных классов. Каждая проблема классификации включает как минимум два класса. В вашем случае второй класс - это любой, кто не находится в положительном классе. Чтобы сформировать правильную границу решения, используя байесовский метод или любой другой хороший метод, лучше всего использовать как можно больше обучающих данных, случайно выбранных из класса. Если вы сделаете неслучайный выбор, вы можете получить выборку, которая действительно не представляет форму условных плотностей / распределений класса и может привести к неправильному выбору границы решения.
источник
Я согласен с Майклом.
Относительно вашего вопроса о случайном выборе; да: вы должны выбрать случайным образом из дополнительного набора ваших «позитивов». Если есть какая-то путаница, что возможно, что ваши «позитивы» не полностью определены как «чисто позитивные», если я могу использовать эту фразу, то вы также можете попробовать хотя бы какое-то согласованное определение для позитивов, чтобы вы могли контроль над теми переменными, которые потенциально могут привести к некоторому загрязнению в определении «положительный». В этом случае вы должны соответственно сопоставить по тем же переменным на «неположительной» стороне.
источник
Статья, которая может представлять интерес:
Который берет метод для приписывания текста группе авторов и расширяет его, чтобы использовать возможность того, что настоящего автора нет в наборе кандидатов. Даже если вы не используете метод NSC, идеи в статье могут быть полезны для размышления о том, как действовать дальше.
источник