Применение гибридных подходов в разработке рекомендательных систем
На сегодняшний день существуют множество различных алгоритмов рекомендаций, которые основываются на разных предположениях и используют различную информацию. Каждый алгоритм имеет свои достоинства и недостатки. В данной работе предпринимаются попытки объединить несколько различных подходов в одну рекомендательную систему.
В данной работе предлагается архитектура двухуровневой гибридной рекомендательной системы на основе факторизационных машин в качестве первого уровня и градиентного бустинга над деревьями решений в качестве второго уровня системы. Данная архитектура строится в рамках задачи рекомендации фильмов.
Введение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2
Постановка задачи . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
Обзор литературы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6
Глава 1. Коллаборативная фильтрация . . . . . . . . . . . . . . . . . 7
1.1 Фукции оценки качества ранжирования . . . . . . . . . . . . . 7
1.2 Матричное разложение . . . . . . . . . . . . . . . . . . . . . . 8
1.3 Факторизационные машины . . . . . . . . . . . . . . . . . . . . 9
1.4 Модель LightFM . . . . . . . . . . . . . . . . . . . . . . . . . . 11
1.5 Обучение ранжированию . . . . . . . . . . . . . . . . . . . . . 12
Глава 2. Контентная модель . . . . . . . . . . . . . . . . . . . . . . . 15
2.1 Деревья принятия решений . . . . . . . . . . . . . . . . . . . . 15
2.2 Градиентный бустинг в задаче рекомендации . . . . . . . . . . 18
Глава 3. Гибридная рекомендательная система . . . . . . . . . . . . . 22
3.1 Гибридизация . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
3.2 Набор данных . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
3.3 Построение решения задачи рекомендации . . . . . . . . . . . 24
3.4 Результаты . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
Выводы . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29
Заключение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
Список литературы . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31
Приложение . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33
На сегодняшний день количество информации и сервисов, предостав- лющих её, стремительно растут. И пользователь сталкивается с проблемой выбора релевантной для него информации. Эту задачу и решают рекомен- дательные системы.
Определение. Рекомендательные системы – одно из приложений ма- шинного обучения, задачей которой является предоставление пользовате- лю рекомендаций относительно товаров, которые могли бы ему понравить- ся.
Приведем несколько примеров рекомендательных систем из разных областей:
• Видеостриминговые сервисы: Netflix, YouTube. • Музыкальные сервисы: Spotify, Apple Music.
• Новостные сайты: BuzzFeed.
• Социальные сети: Facebook.
Большинство данных сервисов становятся популярными именно бла- годаря системам рекомендаций. Например, музыкальный сервис Spotify 1 каждый день предлагает множество персонализированных подборок каж- дый день.
Наиболее популярными являются следующие 2 класса рекоменда- тельных систем:
• Ориентированные на контент. Такие системы ориентируются на харак- теристики объектов и профиле пользователя.
• Коллаборативная фильтрация. Данный подход учитывает только оцен- ки пользователей относительно объектов, с которыми пользователь уже провзаимодействовал. Основное предположение состоит в следую- щем: пользователи, которые одинаково оценивали какие-либо объекты, будут давать похожие оценки другим предметам в будущем.
В коллаборативной фильтрации также различают 2 типа оценок поль-
зователя объекту:
1 https://www.spotify.com
2
• Явная обратная связь. Пользователь явно сообщает свое мнение отно- сительно объекта, в виде, например, рейтинга. Рейтинги бывают либо бинарными (нравится/не нравится), либо в выраженными в некоторой шкале (например, от одной до пяти звёзд).
• Неявная обратная связь. В данном случае пользователь не сообщает явно свое предпочтение, но при этом система логирует взамодействие пользователя и объекта. Например, человек может полностью посмот- реть фильм несколько раз, но при этом явно не сообщать нравится ли ему данный фильм. И система может считать данное взаимодействие положительным.
Минусами неявной обратной связи можно считать тот факт, что мы можем лишь предполагать об истинных предпочтениях пользователя. С другой стороны, неявных откликов намного больше, так как не требуют ничего от пользователя.
В данной работе будут изучены ранжирующие алгоритмы разных ти- пов и все подходы будут исследованы в рамках данных, предоставленным одним онлайн-кинотеатром в рамках соревнования по машинному обуче- нию [15]. Организаторами соревнования были предоставлены данные по просмотрам, проставлениям рейтингов, добавления в избранное фильмов и сериалов. По данным необходимо построить рекомендательную систему и предсказать 20 наиболее релевантных фильмов для каждого пользователя. Функции оценки качества предсказаний будут рассмотрены ниже. Именно решение данной задачи и программная реализация являются основными аспектами данной работы.
Работа состоит из трех глав. В первой главе рассматривается кол- лаборативная фильтрация. Также изучается обобщение данного подхода – модель факторизационных машин, и конкретная реализация фактори- зационной модели LightFM [5]. Также рассматривается техника обучения ранжирования (англ. learning to rank). В качестве функции потерь изуча- ется WARP [6].
Во второй главе рассматривается модель деревьев принятия реше- ний и алгоритм градиентного бустинга над деревьями решений. В качестве функции потерь изучается функция LambdaRank [11].
В третьей главе предлагается архитектура гибридной двухуровнен- 3
вой рекомендательной системы на основе факторизационных машин и гра- диентного бустинга над деревьями решений. Также приводится подробной описание данной архитектуры, изучается структура данных [15], и приво- дится результат работы данной системы на действительных данных.
На сегодняшний день существуют множество различных алгоритмов
рекомендаций, которые основываются на разных предположениях и ис-
пользуют различную информацию. Каждый алгоритм имеет свои досто-
инства и недостатки. В данной работе предпринимаются попытки объеди-
нить несколько различных подходов в одну гибридную рекомендательную
систему. Данная система использует достоинства моделей коллаборативной
фильтрации и контентных моделей.
Эксперименты показывают, что гибридная двухуровневая модель ре-
комендации показывает достаточно высокие результаты в сравнении с от-
дельными моделями. При этом вся гибридная архитектура не является
ресурсоёмкой. Все эксперименты проводятся на реальных данных историй
взаимодейтвий пользователей в одном онлайн-кинотеатре.
[1] Robin Burke. Hybrid Web Recommender Systems, pages 377–408.
Springer Berlin Heidelberg, Berlin, Heidelberg, 2007.
[2] Koren, Yehuda; Bell, Robert; Volinsky, Chris (August 2009). “Matrix
Factorization Techniques for Recommender Systems”. Computer. 42 (8): 30–37.
[3] T. Hastie, R. Tibshirani, J. Friedman. The Elements of Statistical
Learning: Data Mining, Inference, and Prediction, Second Edition. Springer,
2016. 745 p.
[4] S. Rendle. Factorization machines. In Data Mining (ICDM), 2010
IEEE 10th International Conference on, pages 995–1000. IEEE, 2010.
[5] Maciej Kula. Metadata Embeddings for User and Item Cold-start
Recommendations. arXiv preprint arXiv:1507.08439, 2015.
[6] J. Weston, S. Bengio, and N. Usunier. WSABIE: Scaling up to large
vocabulary image annotation. In IJCAI, volume 11, pages 2764–2770, 2011
[7] J.H. Friedman. Greedy function approximation: A gradient boosting
machine. Technical Report, IMS Reitz Lecture, Stanford, 1999; see also Annals
of Statistics, 2001.
[8] K. Guolin, M. Qi, et al. LightGBM: A highly efficient gradient boosting
decision tree. In NIPS, pages 3149–3157, 2017.
[9] Q. Wu, C.J.C. Burges, K. Svore and J. Gao. Adapting Boosting for
Information Retrieval Measures. Journal of Information Retrieval, 2007.
[10] C.J.C. Burges, T. Shaked, E. Renshaw, A. Lazier, M. Deeds, N.
Hamilton and G. Hullender. Learning to Rank using Gradient Descent. Proceedings
of the Twenty Second International Conference on Machine Learning, 2005.
[11] Tie-Yan Liu (2009), Learning to Rank for Information Retrieval,
Foundations and Trends in Information Retrieval: Vol. 3: No 3, с. 225-331
[12] C. J. Burges. From ranknet to lambdarank to lambdamart: An overview.
Learning, 11, pp. 23-581, 2010.
[13] Breitinger, Corinna; Gipp, Bela; Langer, Stefan (2015-07-26). Research-
paper recommender systems: a literature survey. International Journal on Digital
Libraries. 17 (4): 305–338.
[14] Акулич И. Л. Математическое программирование в примерах и
задачах. — М.: Высшая школа, 1986. — С. 298-310.
[15] https://boosters.pro/championship/rekko_challenge/
[16] https://github.com/xaphoon/rekko_challenge
Последние выполненные заказы
Хочешь уникальную работу?
Больше 3 000 экспертов уже готовы начать работу над твоим проектом!