Python для анализа данных


Я не слишком увлекаюсь интеллектуальным анализом данных, но мне нужны некоторые идеи по кластеризации. Позвольте мне сначала описать мою проблему.

У меня есть около 100 листов данных, которые содержат отзывы пользователей. Я пытаюсь найти для примеров слова, которые описывают качество. Один может сказать, что это удивительное качество другой человек может сказать, что отличное качество теперь я должен сгруппировать те документы, которые описывают эти похожие предложения и получить частоту таких предложений. Какую концепцию применить здесь?

Наверное, я должен укажите некоторые стоп-слова и синонимы. Я не слишком знаком с этой концепцией.

Может ли кто - нибудь дать мне какие-то подробные ссылки или объяснения? и какой инструмент следует использовать? Я в основном программист python, поэтому любой модуль python будет оценен по достоинству.

Спасибо

3 3

3 ответа:

Есть http://www.nltk.org/ для обработки языка. С помощью этой библиотеки вы можете разбивать текст на предложения, вычислять частоту терминов, находить синонимы и многое другое.

Морковь^2 - это хороший проект с открытым исходным кодом для кластеризации фрагментов текста, к сожалению, он написан на Java. Идея, лежащая в основе его кластеризации, - это частотность терминов и фраз (биграмм и триграмм). После предварительной обработки каждый документ (фрагмент, обзор) представляется в виде вектора термина / фразы частоты. Для вычисления кластеров они используют некоторую линейную алгебру и находят главные компоненты в этом пространстве терминов. Затем эти компоненты используются для формирования кластеров и меток для них.

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

В вашем конкретном случае стоит исключить слова, представляющие интерес, так резко уменьшающие размерность, которая очень важна в таких случаях. задачи

Еще один полезный проект - montylingua

Я бы следовал первичному предложению из этого вопроса о Кроссвалидированном. В частности, посмотрите наscikit-learn .

Вот две статьи, которые извлекают информацию из оценочного текста. Похоже, они делают то, что вы хотите сделать.

Http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.91.9534

Http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.77.5392&rep=rep1&type=pdf