ОБЗОР РЕКОМЕНДАТЕЛЬНЫХ СИСТЕМ

Исламова С.А., Липатникова Н.В.

Казанский национальный исследовательский технический университет им. А. Н. Туполева – КАИ, Институт компьютерных технологий и защиты информации

ОБЗОР РЕКОМЕНДАТЕЛЬНЫХ СИСТЕМ

Аннотация

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

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

Key words: recommendation system, filtration, algorithm

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

  Таким образом, рекомендательная система  использует определенный тип фильтрации информации о потребностях пользователя для предложения ему набора альтернатив, которые могут его заинтересовать. При построении рекомендательных систем, в большинстве случаев,применяется один из двух базовых подходов: контентная фильтрация (content-basedfiltering) и коллаборативная фильтрация (collaborativefiltering). Существуют также и другие подходы (в том числе гибридные)[1].

  1. Контентная фильтрация (content-based)

Система формирует рекомендацию на основе поведения пользователя, то есть предлагаются объекты, похожие на те, что он уже искал. Степень похожести оценивается по признакам содержимого объектов (подбираются объекты со схожими характеристиками). Например, этот способ может использовать предшествующую информацию о запросах (какие страницы просматривал пользователь и характеристики этих страниц). Если какой-то пользователь обычно читает статьи об IOS или часто оставляет комментарии в блогах об операционных системах, то контентная фильтрация может использовать эту информацию для выявления подобного контента и предложения подобного в качестве рекомендованного для этого пользователя. Главная проблема при построении данной фильтрации – сложность выделения признаковых описаний объекта. 

  1. Коллаборативная фильтрация (collaborative)

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

  1. Фильтрация, основанная на знаниях (knowledge base )

Эта рекомендательная система основывается на знаниях о предметной области и схожа с методом контентной фильтрации. Однако, в этом случае используется более глубокий анализ объектов. Связь между объектами выстраивается не по банальным критериям похожести, а по взаимосвязанности различных групп товаров. Как пример можно рассмотреть выбор и покупку телефона на сайте — при просмотре товара сайт предлагает чехлы, зарядные устройства, наушники и другие объекты, которые каким-либо образом могут быть связаны с выбранным товаром.

Помимо анализа взаимосвязей между объектами, так же учитывается ряд дополнительных возможностей, относящихся к индивидуальным качествам определенного пользователя:

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

Данная рекомендательная система основывается на использовании преимуществ одних типов рекомендательных систем для того, чтобы компенсировать недостатки других. Как правило, это самая сложная система для реализации, так как алгоритм построения данной системы – всегда уникален. Все самые крупные рекомендательные и поисковые системы – гибриды.

В данных рекомендательных системах может применяться множество алгоритмов, наиболее применяемые из них:

  • Байесовские сети доверия (BayesianBeliefNets) – зрительно могут быть изображены как ориентированные ациклические графы, где связанные вероятности переменных представлены в виде ребер[3].
  • Цепи Маркова (Markovchains) – в основе данного алгоритма лежит тот же подход, что и в байесовских сетях доверия, но в этом случае проблема выработки рекомендации решается как последовательное повышение эффективности, а не как простое прогнозирование.
  • Классификация по методу Роккио (Rocchioclassification) –в данном алгоритме для улучшения достоверности рекомендаций используется оценка релевантности объектов[2].
  • Сингулярное разложение матрицы (singularvaluedecomposition, SVD) – данный метод используется для сокращения матриц, применяя его в рекомендательных системах можно предсказать, какую оценку пользователь может выставить некоторым продуктам.

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

Литература

  1. Гусева А.И., Киреев В.С., Филиппов С.А. Повышение точности классификации научных данных при использовании ансамблевого подхода // Современные наукоемкие технологии. – 2016. –№ 12 (часть 2) – С. 243-252. [2]
  2. М. Джонс. Рекомендательные системы. Часть 1. Введение в подходы и алгоритмы [Электронный ресурс]: Принципы работы рекомендательных механизмов Интернета – Режим доступа: https://www.ibm.com/developerworks/ru/library/os-recommender1/ [1]
  3. Сегаран. Т. Программируем коллективный разум. – Пер. с англ. – СПб: Символ-Плюс, 2008. – 368 с.[3]