Тип работы:
Предмет:
Язык работы:


Оптимизация алгоритмов рекомендательной системы

Работа №128425

Тип работы

Бакалаврская работа

Предмет

информатика

Объем работы41
Год сдачи2021
Стоимость4320 руб.
ПУБЛИКУЕТСЯ ВПЕРВЫЕ
Просмотрено
23
Не подходит работа?

Узнай цену на написание


Введение 3
Постановка задачи 8
Обзор Литературы 11
Глава 1. Алгоритмы рекомендательных систем 12
1.1. Alternating Least Squares (ALS) 12
1.2. Применение функции BM25 15
1.3. Lightfm with warp loss function 16
1.4. Метод ближайших соседей 19
1.5. Применение функции TF-IDF 21
1.6. Autoencoder 22
Глава 2. Практические результаты 27
Заключение 35
Список литературы 36
Приложение 38

Задача разработки рекомендательных систем появилась относительно недавно - в век развития Интернета и информационных технологий количество доступной информации увеличилось настолько, что человек не способен проанализировать её полностью, чтобы выбрать только интересную ему.
Поэтому многие современные сервисы создают рекомендательные системы, которые на основе информации о профиле пользователя и его предыдущего поведения в системе пытаются определить, какие объекты, товары или услуги могут быть ему интересны. Объектами могут быть товары, книги, музыка, фильмы, новости и т. д.
Многие известные по всему миру сайты уже используют рекомендательные системы: Ozon, eBay, Amazon, Кинопоиск, IMDb, Pandora и др., но ни одна из систем не может гарантировать 100% точность сформированной рекомендации. Методы построения прогноза нуждаются в усовершенствовании. К примеру, со 2 октября 2006 года Netflix проводил открытое соревнование Netflix prize, в котором командам необходимо было усовершенствовать алгоритм рекомендательной системы для лучшего предсказания оценок, которые поставят пользователи фильмам. Главный приз данного соревнования составлял $1,000,000.
Как стало понятно, рекомендательные системы могут служить инструментом для увеличения продаж, продажи более разнообразных объектов, а также улучшения понимания пользовательских потребностей и желаний. Поэтому они быстро набирают популярность и начинают широко применяться в электронной коммерции, при поиске фильмов, музыки, ПО, научных статей, а также на новостных сайтах и в справочных центрах. Таким образом, задача разработки эффективных рекомендательных систем ныне является актуальной.
То есть рекомендательные системы — это комплексы алгоритмов, программ и сервисов, основная задача которых предсказать, какие объекты будут интересны пользователю и как он на них отреагирует, ориентируясь на информацию о его профиле либо иные данные. Такие данные могут быть получены как явными, так и неявными способами. К явным относят следующие методы: пользователь ставит оценку объектам из заданного диапазона или ранжирует группу объектов, выбирает наиболее привлекательный из двух или небольшой группы объектов и др. К неявным методам относятся: число просмотров объекта (например, сколько раз была прослушана аудиозапись), категории просматриваемых объектов (например, в интернет-магазинах, где есть точное разделение на категории) и др.
Различают 4 основных типа рекомендательных систем:
• Коллаборативная фильтрация (Collaborative Filtering) — рекомендации, в которых используется информация о поведении пользователей в прошлом - например, информация о покупках или оценках, данным некоторым товарам. Такие системы основаны на схожести предпочтений пользователей. При этом могут учитываться неявные характеристики, которые сложно было бы учесть при создании профиля. Основное допущение метода состоит в следующем: те, кто одинаково оценивали какие-либо предметы в прошлом, склонны давать похожие оценки другим предметам и в будущем. Прогнозы составляются индивидуально для каждого пользователя, хотя используемая информация собрана от многих участников. Главным недостатком методов коллаборативной фильтрации является наличие проблемы «холодого» старта. Это ситуация, когда объекту еще никто не поставил никакую оценку или таких оценок слишком мало. При использовании этого подхода новые объекты не будут рекомендоваться пользователям в силу отсутствия оценок этого объекта.
• Основанные на контенте (content-based) — рекомендации, основанные на данных, собранных о каждом конкретном объекте и пользователе. Пользователю рекомендуются объекты, похожие на те, которыми он ранее интересовался, а также объекты, которые, скорее всего, будут интересны, исходя из профиля пользователя. Похожесть оценивается по содержимому объектов. Когда новый пользователь, у которого пустой профиль, начинает использовать рекомендательную систему, основанную на контенте, ему необходимо дать некоторую информацию о себе. Это можно сделать разными способами: путем задания предпочтительных значений характеристик, указанием интересных ему объектов (при сравнении с которыми можно будет выделить ключевые характеристики для этого пользователя), а также добавлением личной информации. При использовании рекомендательных систем такого типа основной проблемой, с которой сталкиваются разработчики, является проблема нахождения значений параметров-характеристик объекта, так как количество таких характеристик может быть очень большим. Преимуществом рекомендательных систем основанных на контенте является отсутствие проблемы «холодного» старта. При использовании этого метода пользователям достаточно заполнить хотя бы частично свои профили, после чего им можно рекомендовать как новые, так и давно имеющиеся в базе и уже рекомендованные другим пользователям объекты.
Модели, основанные на контенте, как правило, гораздо более точны, чем методы коллаборативной фильтрации, но сильно проигрывают им в скорости.
• Гибридные (hybrid) — рекомендации основаны на комбинировании коллаборативных и контентных подходов, что позволяет избежать большинства недостатков, свойственных каждой системе.

Возникли сложности?

Нужна помощь преподавателя?

Помощь студентам в написании работ!


Таким образом, в данной работе рассмотрено несколько подходов к реализации алгоритмов коллаборативной фильтрации.
Были построены алгоритмы для рекомендательных систем и подобраны для них гиперпараметры. Также были реализованы метрики, каждая из которых по-разному характеризует рекомендуемые списки аудиозаписей. Для каждой модели были посчитаны метрики. Было показано, что оценки метрик, посчитанных на 10% клиентов, являются несмещёнными для метрик, посчитанных на всех пользователях. Оказалось, что алгоритм Als рекомендует наиболее подходящие треки для пользователей, если каждый элемент тренировочной матрицы преобразовать с помощью функции ранжирования bm25. Такая модель работает даже лучше, чем Lightfm с warp loss функцией, хотя этот алгоритм достаточно популярен в таком роде задач. Но все же модель, показавшая себя лучше всех, среди рассмотренных, это autoencoder. Также было показано, что с ростом тренировочных данных, качество рекомендаций модели увеличивается на тестовых данных.
В будущем планируется реализовать алгоритмы для гибридных рекомендательных систем, то есть, помимо информации об истории прослушиваний треков каждого пользователя, модель будет использовать дополнительную информацию о музыкальных треках и пользователях.



[1] Y. Hu, Y. Koren, C. Volinsky, Collaborative filtering for implicit feedback datasets, Eighth IEEE International Conference on Data Mining, 2008.
[2] G. Takacs, I. Pilaszy, D. Tikk, Applications of the conjugate gradient method for implicit feedback collaborative filtering, RecSys ’11: Proceedings of the fifth ACM Conference on Recommender Systems, 2011.
[3] «Ranking evaluation metrics for recommender systems» [В интернете]: URL: https://towardsdatascience.com/ranking-evaluation-metrics-for- recommender-systems-263d0a66ef54[дата обращения: 10.01.2021].
[4] «Рекомендации в Okko: как заработать сотни миллионов, перемножив пару матриц» [В интернете]: URL:
https://habr.com/ru/company/okko/blog/454224/[дата обращения: 10.01.2021].
[5] «Методы оптимизации нейронных сетей» [В интернете]: URL: https://habr.com/ru/post/318970/[дата обращения: 10.01.2021].
[6] J. Weston, S. Bengio, N. Usunier, WSABIE: Scaling Up To Large Vocabulary Image Annotation, International Joint Conferences on Artificial Intelligence, 2011.
[7] M. Kula, Metadata Embeddings for User and Item Cold-start Recommendations, ArXiv.org (Cornell University Library), 2015.
[8] N. Usunier, D. Buffoni, P. Gallinari, Ranking with ordered weighted pairwise classification, Proceedings of the 26th International Conference on Machine Learning, p. 1057-1064, Montreal, 2009.
[9] S. Sedhainf, A. Krishna Menon, S. Sanner, L. Xie, AutoRec: Autoencoders Meet Collaborative Filtering, Association for Computing Machinery (ACM), Montreal, 2016.
[10] F. Ricci, L. Rokach, B. Shapira and P. B. Kantor, Recommender Systems Handbook, LLC: Springer Science+Business Media, 2011.
[11] «Рекомендательные системы сегодня -необходимость для бизнеса» [В интернете]: URL: https://blog.heyml.com/[дата обращения: 10.01.2021].
[12] Т. Сегаран, Программируем коллективный разум, СПб.: Символ- Плюс, 2008.
[13] Н. Арзуманян, М. Смирнов, М. Смирнова, Анализ использования различных мер сходства в коллаборативной фильтрации, Процессы управления и устойчивость том 3, р. 342 - 347, 2016.
[14] К. В. Воронцов, Лекции по метрическим алгоритмам классификации, p. 2-7, 2008.
[15] Х. Лейн, Х. Хапке, К. Ховард, Обработка естественного языка в действии, р. 132-139, 2020.
[16] K.Falk, Practical Recommender Systems, p. 227- 229, 2019.
[17] F. Kane, Building Recommender Systems with Machine Learning and AI, p. 39 - 47, 2018.
[18] P. Achlioptas, Stochastic Gradient Descent in Theory and Practice, Stanford, p. 1 - 2, 2019.
[19] J. Duchi, E. Hazan, and Y. Singer, Adaptive subgradient methods for online learning and stochastic optimization, The Journal of Machine Learning Research, 2011.
[20] Ш. Франсуа, Глубокое обучение на Python, p. 81 - 85, 2018.
[21] В.С. Ростовцев, Искусственные нейронные сети, Издательство "Лань p. 4 - 7, 2021


Работу высылаем на протяжении 30 минут после оплаты.



Подобные работы


©2024 Cервис помощи студентам в выполнении работ