УДК 004

Метод сингулярного разложения в задачах прогнозирования пользовательского интереса при рекомендации товаров и услуг

Гордеев Дмитрий Владимирович – аспирант Российского государственного социального университета.

Аннотация: В статье рассмотрены основные методы построения рекомендательных систем, а также даны определения основных подходов в построении рекомендательных систем. Рассматривается задача коллаборативной фильтрации в условиях высокой размерности и сильной разреженности данных. Для решения этой задачи предлагается использовать математическую технику факторизации матриц низкого ранга.

Ключевые слова: рекомендательные система, коллаборативная фильтрация, контентная фильтрация, матричная факторизация, прогнозирование.

Рекомендательные системы – совокупность математических методов и программных сервисов, анализирующих тенденции и предпочтения отдельных людей (клиента, потребителя, пользователя) и пытаются предсказать, что их заинтересует.

Целью данных систем является предсказывание предпочтений потребителя с максимальной точностью и формирование для него персональных предложений, наиболее подходящих товаров или услуг.

Рекомендательные системы широко применяются в современном мире. Использование данного класса систем можно встретить при рекомендации книг, кинофильмов, музыкальных композиций, товаров и продуктов и т.д. Имея различные области применения и назначения, рекомендательные системы можно разделять по различным параметрам: цели, предмету, степени персонализации.

Так, если рекомендательная система формирует предложения контента (фильмы, книги, новости и т.п.), то основной целью данной системы является привлечь пользователя к потреблению новой информации. В данном случае, предложение основано, как на действиях самого пользователя, так и на новизне, различных оценках и популярности данного контента у других пользователей.

При рекомендации потребителю купить товары, например повседневного спроса система имеет иные задачи, а именно не только предложить новые товары, учитывая контекстные действия потребителя, но и «подсветить» часто покупаемые, основываясь на его истории потребления. Тут основные цели системы – повысить средний чек, расширить корзину потребления и лояльность потребителя.

Рекомендательные системы предоставляют ряд преимуществ для потребителя и поставщика товаров/услуг. Для потребителя это в первую очередь представление рекомендаций по товарам/услугам, которые потенциально могли бы вызвать у него интерес и могли бы быть ему полезны исходя из анализа его потреблений и предпочтений. Поставщик услуг/товаров также имеет ряд преимуществ:

  1. Увеличение количества продаж. Одна из важных причин внедрения и рекомендательной системы. Как следствие использования такого класса интеллектуальной системы является повышение коэффициента конверсии потребителей.
  2. Продвижение товаров/услуг. Продажа разнообразного товара. Благодаря рекомендательной системе происходит продвижения товаров и услуг, которые могли бы остаться не замеченные потребителями.
  3. Перекрестные продажи. Рекомендательные системы при продвижении товара предлагают «сопутствующие» товары/услуги, которые связанны с купленным товаром/услугой.
  4. Повышение лояльности. Потребители работают с теми платформами/магазинами, где качественный и удобный сервис, а также, где присутствуют релевантные предложения и были удовлетворены их потребности.
  5. Данные для проведения анализа потребительского спроса.

От поставленных целей, задач и требуемых характеристик зависит выбор одного из подходов в реализации рекомендательной системы.

Основные методики построения рекомендательных систем

Можно выделить несколько основных подходов при построении рекомендательной системы: контентно‑ориентированная и коллаборативная фильтрация.

Контекстно-ориентированная

Контекстно-ориентированный подход основывается на предположении, что потребителю интересны те товары, которые похожи на товары, приобретенные им ранее [4,2]. Схожесть товаров определяется на основе признаков, характеризующих товар. Ярким примером рекомендательной системы, основанной на контекстно-ориентированном подходе, является система рекомендации фильмов в онлайн кинотеатре. В данном случае система ищет сходства между фильмами основываясь на следующих признака, описывающих фильм: жанр, режиссер, актеры, киностудия, год и т.д. Данный подход является достаточно простой и хорошо решает определенный круг задач. Основная трудность данном подходе это выделение признаков характеризующий объект.

Коллаборативная фильтрация

Основная идея рекомендательных систем, основанных на подходе коллаборативной фильтрации, заключается в использовании так называемого «группового интеллекта». На основе анализа накопленных данных система рекомендует те продукты, которыми уже интересовалась группа пользователей с похожими интересами, а данный пользователь пока еще нет. Суть метода в нахождении отношений между пользователями или товарами (элементами) [3]. Вначале находятся сходства пользователей на основе данных о предпочтениях по элементам. Далее рекомендации даются на основе похожих пользователей.

В основе коллабаративной фильтрации лежит матрица предпочтений (user-item matrix) – сопоставлении пользователей и товаров (или услуг, новостей и т.д.).

Рисунок 1. Матрица предпочтений.

В коллаборативной фильтрации выделяют два подхода: на основе пользователя и на основе продукта (элемента).

На основе пользователя

Данный подход формирует предложения пользователю на основании предпочтений группы пользователей схожих своими вкусами с рассматриваемым. На первом шаге, на основе данных о предпочтениях и интересах, определяется множество пользователей, которые схожи по предпочтениям и интересам с рассматриваемым пользователем. На втором шаге, у группы схожих пользователей отфильтровываются те предпочтительные элементы, но еще не были у рассматриваемого пользователя. Далее, эти элементы рекомендуются рассматриваемому пользователю.

Точность рекомендации напрямую зависит от полноты и богатства признаков в наборе данных. Как попутный результат, коллаборативная фильтрация на основе пользователя неявно выявляет отношение между рекомендованными товарами и предпочтениями пользователя.

На основе продукта (элемента)

В отличии от коллаборативной фильтрации на основе пользователя, данный метод ищет сходство в элементах, а затем рекомендует похожие элементы на основе существующего выбора пользователя. В частности, на первом шаге, коллаборативная фильтрация на основе элемента вычисляет сходство между элементами в соответствии с данными о поведении пользователя, а затем генерирует список рекомендаций для целевого пользователя на основе сходства элементов и поведения пользователя [9].

Исходя из сути метода коллаборативной фильтрации на основе продукта, данный метод не требует от новых пользователей данных об их интересах. Как только пользователь выберет тот или другой продукт в системе, то можно сразу же рекомендовать продукты, которые похожи на выбранный. Данный метод быстро реагирует на поведение пользователя, т.е. новый выбор (не похожий на ранее сделанный выбор) пользователя приведет к изменению рекомендации в реальном времени. Однако точно точность метода коллаборативной фильтрации на основе продукта ниже, чем у метода коллаборативной фильтрации на основе пользователя поскольку первый не учитывает отличий в интересах разных пользователей [1,8].

Постановка задачи прогнозирования пользовательского интереса

Расчет коэффициентов сходства товаров с товарами, которые пользователь ранее приобрел есть не что иное, как прогнозирование пользовательского интереса. Таким образом, задачу прогнозирования пользовательского интереса можно сформулировать следующим образом.

Пусть задано

  • U = {,..., |U|} – множество пользователей, где n – количество пользователей;
  • I = {,..., |I|} - множество товаров/услуг, с которыми могут взаимодействовать пользователи, где m – количество товаров/услуг (объектов).

Исходные данные

 – транзакционные данные

 – пространство описаний транзакций

 – матрица предпочтений (отношений) пользователей к объектам

 – оценка пользователем  объекту  

 – бинарные данные

или  – рейтинги (порядковые или целые)

Задача

  • предсказание незаполненных ячеек ;
  • ранжирование списка top-n рекомендаций для  и для .

Для решения задачи коллаборативной фильтрации существуют различные алгоритмы, которые используется во многих рекомендательных системах.

Матричное разложение

Рассмотрим матрицу . Если ранг матрицы будет меньше либо равен , то можно найти такие матрицы , , где будет справедливо выражение:

      (1)

В том случае, если ранг матрицы больше k, то приближением ранка k матрицы R будем следующее выражение

,      (2)

где ,  – фактор-матрицы приближения. Ниже будет представлен способ матричного приближения для определенного ранга k матрицы R. Данный способ относится к латентным методам на основе сингулярного разложения матрицы .

Алгоритм сингулярного разложения (singular value decomposition - SVD) – данный алгоритм основан на решении оптимизационной задачи, а именно минимизируется квадратическое отклонение для элементов матрицы предпочтений, при приближении ранга k [5]

      (3)

где  – элемент u-й строки, i-го столбца матрицы ;  – u-я строка матрицы X;  – i-я строка матрицы Y. При этом матрицы X, Y определены с точностью до невырожденного линейного преобразования , так как:

      (4)

Список литературы

  1. Клюквин Р.В., Белов Ю.С. Использование косинуса схожести в рекомендательных системах на основе коллаборативной фильтрации // Электронный журнал: наука, техника и образование. 2017. № 2 (12). С. 131-136.
  2. Barsegyan A.A. [et al.]. Data analysis technologies: DataMining, VisualMining, TextMining, OLAP [In Russian]. Moscow: BHV-Petersburg‖ Publ.; 2007.
  3. Bokde D., Girase S., Mukhopadhyay D. Matrix factorization model in collaborative filtering algorithms: A survey, Procedia Computer Science 2015; 49: 136-146.
  4. Chubakova I.A. Data Mining [In Russian]. Moscow: Binom‖ Publ.; 2008.
  5. Cremonesi P., Koren Y., Turrin R. Performance of recommender algorithms on top-n recommendation tasks. RecSys 2010.
  6. Introduction to recommendation engine. – https://dataaspirant.com/2015/01/24.
  7. Nee D. Collaborative filtering using alternating least squares. –http://danielnee.com/art/1999.
  8. Shams B., Haratizadeh S. Graph-based collaborative ranking // Expert Syst. Appl., 2017, vol. 67, no. C, pp. 59-70.
  9. Wang Q., Zhang T., Rong Z. Collaborative Filtering Similarity Algorithm Using Common Items// WHICEB, 2017, vol. 16.

Интересная статья? Поделись ей с другими: