Как алгоритм трендовых тем Twitter решает, какие слова извлекать из твитов?
Вопрос
Я видел этот вопрос, которая фокусируется на проблеме "Бритни Спирс".Но у меня есть немного другой вопрос.Как алгоритм определяет, какие слова или фразы необходимо ранжировать?Например, если я отправляю твит с надписью "Майкл Джексон умер", как он узнает, что нужно удалить "Майкл Джексон", но не "умер"?
Или предположим, что Алек Болдуин и Стивен Болдуин были в новостях в тот день и, таким образом, оба упоминались во множестве твитов.Откуда бы ему знать, что к обоим именам нужно относиться по-разному, вместо того чтобы просто вытаскивать "Болдуин"?
Будучи наивным, я мог бы рассматривать эту проблему как NP-завершенную (вам пришлось бы сравнить все потенциальные фразы в твите со всеми потенциальными фразами в твитах всех остальных).
Решение
Общее решение этой проблемы заключается в "частота термина, обратная частоте документа" (tf-idf).
Это статистический подход, который находит слова / термины, которые являются более релевантными, чем другие, потому что они встречаются не очень часто.В этом случае имя "Майкл Джексон" может иметь очень низкую частотность по сравнению с распространенным английским словом "умер".
Что касается Алека Болдуина противСтивен Болдуин - они будут идентифицированы как отдельные во время пометка частью речи - они были бы помечены как отдельные имена собственные.
Другие советы
Я полагаю, что он ищет общие наборы слов.Кроме того, похоже, что они ссылаются http://www.whatthetrend.com/
В дополнение к этому, здесь также может быть задействован небольшой человеческий контроль.