Алгоритм классификации текста - PullRequest
4 голосов
/ 08 октября 2010


У меня миллионы коротких (до 30 слов) документов, которые мне нужно разделить на несколько известных категорий. Возможно, что документ соответствует нескольким категориям (редко, но возможно). Также возможно, что документ не соответствует ни одной из категорий (также редко). У меня также есть миллионы документов, которые уже были классифицированы. Какой алгоритм я должен использовать, чтобы сделать работу. Мне не нужно делать это быстро. Я должен быть уверен, что алгоритм классифицирует правильно (насколько это возможно).
Какой алгоритм я должен использовать? Есть ли реализация в в C #?
Спасибо за вашу помощь!

Ответы [ 5 ]

7 голосов
/ 08 октября 2010

Взгляните на периодичность и частоту обратных документов также косинусное сходство , чтобы найти важные слова для создания категорий и присвоить документы категориям на основе сходства

EDIT:

Нашел пример здесь

1 голос
/ 08 октября 2010

Важнейшим вопросом ИМХО здесь является длина документов. Я думаю, что я бы назвал это классификацией фраз, и из-за того, что происходит в твиттере, идет работа над этим. Вы можете добавить дополнительный текст, выполнив поиск в сети по 30 словам, а затем проанализировав лучшие совпадения. Об этом есть бумага, но я не могу ее найти сейчас. Затем я бы попробовал подход векторного подхода (tdf-idf как в ответе Джимми) и мультиклассовый SVM для классификации.

0 голосов
/ 12 декабря 2017

Вы можете использовать алгоритм SVM для классификации текста в C # с библиотекой libsvm.net.

0 голосов
/ 08 октября 2010

Возможно, дерево решений объединено с NN?

...