У меня есть список часто используемых терминов, полученных из различных поисковых запросов определенного пользователя.
Например:
спорт, бадминтон, футбол
футбол, спортивные
исследования, искусственный интеллект, алгоритм
исследования, адаптивный, персонализированный поиск
исследования, искусственный интеллект, нейросеть
Цель здесь состоит в том, чтобы построить иерархический профиль пользователя на основе этих частых терминов с гипотезой о том, что термины, которые часто появляются в таких запросах, представляют темы, которые интересуют пользователя. В иерархии общие термины с более высокой частотой размещаются на более высоких уровнях, а конкретные термины с более низкой частотой размещаются на более низких уровнях иерархического профиля пользователя.
Ожидаемым результатом будет дерево профиля пользователя, выглядящее примерно так:
- User profile
- research
- AI
- алгоритм
- персонализированный поиск
- ..
- sports
- soccer
- бадминтон
- research
Итак, в настоящее время я застрял и даже не знаю, с чего начать или какие библиотеки использовать. (В этом проекте я работаю с java).
Буду очень признателен, если кто-нибудь сможет мне помочь.
Заранее спасибо.