Хороший алгоритм для поиска тем в твитах, ранжированных по количеству подписчиков? - PullRequest
5 голосов
/ 05 января 2011

Я новичок в области интеллектуального анализа данных и немного экспериментирую.

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

Затем я хочу объединить все темы, если они достаточно похожи, но при этом сохранить вес по количеству твиттеров.

Таким образом, в основном это список «важных» тем, ранжированных по авторитетам (количество пользователей в твиттере)

Например, как news.google.com, но рейтинг будет основываться на фолловерах, которые отвечают за тему.

Я бы предпочел что-то в python, так как это язык, с которым я больше всего знаком.

Есть идеи?

Спасибо

РЕДАКТИРОВАТЬ: Вот хорошийпример того, что я пытаюсь сделать (но с разными данными) http://www.facebook.com/notes/facebook-data-team/whats-on-your-mind/477517358858

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

Где бы я начал решать это и генерировать такие графики?

Ответы [ 2 ]

4 голосов
/ 05 января 2011

Вообще говоря: R имеет несколько пакетов, специально предназначенных для анализа текста и обработки данных, предлагая широкий спектр методов. Я не знаю таких пакетов в Python, но это не значит, что их не существует. Я бы просто не реализовал все это сам, это немного сложнее, чем кажется на первый взгляд.

Некоторые вещи, которые вы должны учитывать:

  • определение "темы": это теги, которые они используют? Вы группируете теги? У вас есть небольшой список с ограниченным набором или набор неограниченный?
  • определение "общей темы": это наиболее часто используемая тема? Как вы справляетесь со связями? Если пользователь пишет около 10 тем примерно столько же, что тогда?
  • определение «веса»: это эквивалентно количеству пользователей? Квадратный корень? Некоторая категория?

Если у вас есть общее представление об этом, вы можете начать использовать пакет tm для извлечения всей информации в работоспособном формате. Пакет основан на матрицах и объектах метаданных. Они позволяют вам получить взвешенные частоты для разных тем, если вы определили, что вы считаете темой. Вы также можете использовать различные весовые функции, чтобы получить то, что вы хотите. Руководство здесь . Но, пожалуйста, посетите crossvalidated.com для получения дополнительных рекомендаций, если вы не уверены в том, что делаете. На самом деле это больше вопрос интеллектуального анализа данных, чем программирования.

0 голосов
/ 17 ноября 2011

У меня нет конкретного кода, но я считаю, что метод, который вы хотите использовать, - это TF-IDF.Здесь поясняется: http://en.wikipedia.org/wiki/Tf%E2%80%93idf и используется кавычка, часто классифицирующая текст.

...