Использование кластеризации в обработке текста


11

Привет, это мой первый вопрос в стеке Data Science. Я хочу создать алгоритм классификации текста. Предположим, у меня есть большой набор текста и статей. Скажем, около 5000 простых текстов. Сначала я использую простую функцию, чтобы определить частоту всех четырех и выше символов слова. Затем я использую это как особенность каждого учебного образца. Теперь я хочу, чтобы мой алгоритм мог кластеризовать обучающие наборы в соответствии с их особенностями, которые здесь являются частотой каждого слова в статье. (Обратите внимание, что в этом примере каждая статья будет иметь свою уникальную особенность, так как каждая статья имеет свою особенность, например, статья имеет 10 «вода и 23« чистая », а другая имеет 8« политика »и 14« рычаги »). Можете ли вы предложить лучший алгоритм кластеризации для этого примера?

Ответы:


5

Я не знаю, читали ли вы когда-нибудь SenseCluster Тедом Педерсеном: http://senseclusters.sourceforge.net/ . Очень хорошая бумага для смысловой кластеризации.

Кроме того, когда вы анализируете слова, думайте, что «компьютер», «компьютеры», «компьютеризация», ... представляют одну концепцию, поэтому только одну особенность. Очень важно для правильного анализа.

Чтобы говорить об алгоритме кластеризации, вы можете использовать иерархическую кластеризацию . На каждом шаге алгоритма вы объединяете 2 наиболее похожих текста в соответствии с их особенностями (например, с использованием показателя различий, например, евклидова расстояния). С помощью этого показателя различий вы сможете найти наилучшее количество кластеров и, следовательно, наилучшую кластеризацию для ваших текстов и статей.

Удачи :)


6

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

Но есть и другие способы моделирования темы. Прочитайте этот учебник, чтобы узнать больше.


2

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

http://en.wikipedia.org/wiki/Latent_semantic_analysis

http://lsa.colorado.edu/papers/dp1.LSAintro.pdf

Проблема в том, что LSA не имеет надежной статистической поддержки.

Радоваться, веселиться


Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.