Как сгруппировать ключевые слова поисковых систем?

Из Google Analytics у меня есть (длинный) список ключевых слов, которые люди использовали в поисковых системах, чтобы найти мой сайт. Я хочу найти «ключевые ключевые слова», гипотетический пример:

java online training
learning java
scala training
training for java
online training java
learn scala programming

Идеальным результатом были бы: «java», «онлайн-обучение», «обучение», «scala» и «обучение».

Сложность кажется очевидной. обнаруживать полные фразы, игнорировать общие слова (для) и обрабатывать вариации (обучение-обучение).

Есть ли библиотека, которая может это сделать (предпочтительно для JVM)? Или есть подходящий алгоритм, который я могу реализовать самостоятельно?

5
задан stephanos 6 January 2011 в 16:14
поделиться