Сервис рекомендаций по товарам

Я должен сделать сервис рекомендаций книг, используя MyMediaLite. До сих пор я собирал книги с веб-сайта с помощью сканера Nutch и сохранял информацию в hbase. Проблема в том, что я на самом деле не до конца понимаю, как все это работает. Например, я должен передать файлы тестовых данных и обучающих данных с парами идентификаторов пользователя и элемента и рейтингом. Но как насчет другой информации о книге, такой как категории и авторы? Как можно найти "похожие" книги, по их информации и т.д., без информации о пользователе (пока)? Можно ли передавать данные напрямую из hbase, не сохраняя их в файл, а затем вводя? Или для этой работы лучше подойдет Apache Mahout или LibRec?


person Katka    schedule 31.08.2015    source источник


Ответы (1)


Информация об оценках элементов данных, часто представленная в виде матрицы, является основой для алгоритмов совместной фильтрации (CF пользователя, CF элемента-элемента, матричная факторизация и другие). Вы используете мнения других людей для формирования рекомендаций. Нет врожденного распознавания содержания самих предметов. Для этого вам понадобится какой-то алгоритм фильтрации на основе контента или метод интеллектуального анализа данных. Они часто используются в описанном вами сценарии «холодного запуска пользователя»: у вас есть много информации об элементах, но не о предпочтениях конкретного пользователя.

Во-первых, подумайте о своей конечной цели и данных, которые у вас есть. Основываясь на ваших потребностях в продукте и имеющихся данных, вы можете выбрать правильный алгоритм для своих целей. Я настоятельно рекомендую курс RecSys на Coursera для получения дополнительной информации: https://www.coursera.org/learn/recommender-systems. Его преподает лидер в этой области.

person Dan Jarratt    schedule 02.09.2015
comment
Позже я соберу данные о пользователе, использующем Piwik. И я думаю, чтобы получить какие-либо рекомендации на основе авторов/категорий, мне нужно использовать такие методы, как ItemAttributeKNN? И Спасибо за ответ! - person Katka; 03.09.2015