У меня есть миллионы коротких (до 30 слов) документов, которые мне нужно разбить на несколько известных категорий. Возможно, что документ соответствует нескольким категориям (редко, но возможно). Также возможно, что документ не соответствует ни одной из категорий (также редко). У меня также есть миллионы документов, которые уже были классифицированы. Какой алгоритм я должен использовать для выполнения задания. Мне не нужно делать это быстро. Я должен быть уверен, что алгоритм категорирует правильно (насколько это возможно).
Какой алгоритм я должен использовать? Есть ли реализация на C#?
Благодарим за помощь!Алгоритм для классификации текста
ответ
Посмотрите на term frequency and inverse document frequency также cosine similarity найти важные слова для создания категорий и присваивают документов категорий, основанных на сходстве
EDIT:
Найдено пример here
Возможно, дерево решений в сочетании с NN?
Можете ли вы сказать мне, что такое NN? – StuffHappens
NN = "нейронная сеть" – Mick
Основная проблема ИМХО - это длина документов. Я думаю, что я назвал бы эту классификацию фраз, и над этим будет происходить работа из-за твиттера. Вы можете добавить дополнительный текст, выполняющий веб-поиск по 30 словам, а затем анализ верхних совпадений. Есть статья об этом, но я не могу найти ее прямо сейчас. Затем я бы попытался использовать векторный подход (tdf-idf, как в ответе Джимми), и многоклассовый SVM для классификации.
Вы можете использовать алгоритм SVM для классификации текста на C# с библиотекой libsvm.net.
Почему поздний (и менее полный ответ)? –
http://www.tfidf.com/ может быть полезна. – Koray