УДК 004.048
ОБЗОР СОВРЕМЕННЫХ МЕТОДОВ ПОСТРОЕНИЯ РЕКОМЕНДАТЕЛЬНЫХ СИСТЕМ – НА ОСНОВЕ КОНТЕНТА И ГИБРИДНЫЕ СИСТЕМЫ
Аннотация
В данной работе авторы производят обзор современных методов построения рекомендательных систем. Исследуются основные алгоритмы построения рекомендательных систем на основе содержимого, а также гибридные модели.
Ключевые слова: рекомендательная система, машинное обучение, фильтрация на основе контента, гибридные модели.
Введение
Технологии обучения и методы искусственного интеллекта активно используются в реальной жизни. Одним из важных применений таких технологий являются системы построения рекомендаций, предсказывающие «рейтинг» объектов или «предпочтение» пользователей для разных объектов, на основе ранее изученных данных [1].
Коллаборативная фильтрация (CF) и фильтрация на основе контента (CBF) - два основных метода, используемых в рекомендательных системах. Системы CF работают, сначала собирая пользовательские предпочтения для элементов в данной предметной области. Затем системы используют собранные данные для поиска пользователей с похожими профилями и используют их рейтинги для прогнозирования элементов, которые могут заинтересовать конкретного пользователя [2]. CBF - это альтернативный метод, который исходит из области поиска информации. Системы на основе контента полагаются на описания контента элементов (например, заголовок, автор, текстовое описание, параметры объекта и т.д.), чтобы найти такие объекты, похожие на элементы, которые интересуют пользователя. CBF в основном используется в предметных областях, где доступны характеристики и описание объектов [2].
И коллаборативная фильтрация, и фильтрация на основе контента имеют свои сильные и слабые стороны. Ключевым преимуществом CF над CBF является то, что первая может работать в тех предметных областях, где трудно получить описания содержимого объектов, например, где элементы, которые следует рекомендовать, представляют собой идеи, мнения и т.д. Это делает коллаборативную фильтрацию более успешным методом рекомендаций в различных областях [1],[2]. С другой стороны, CF полагается только на оценки пользователей для выработки рекомендаций. На практике большинство пользователей оценивают очень мало элементов, а данные о рейтингах обычно очень скудны и разрежены. Поэтому достаточно сложно достоверно сравнить профили двух пользователей. Эта проблема широко известна как проблема разреженности данных и представляет собой серьезную проблему для алгоритмов коллаборативной фильтрации. Другая проблема заключается в том, что методы CF не могут обрабатывать элемент, если ни один пользователь не оценил его ранее. Эта проблема, известная как «проблема холодного старта» [3], относится к новым и малоизвестным объектам. Такие проблемы легко решает система фильтрации на основе контента, который может давать рекомендации, сравнивая описания содержимого элементов в системе.
Рекомендательные системы, реализующие подход фильтрации на основе контента, анализируют набор документов и / или описаний элементов, ранее оцененных пользователем, и создают модель или профиль интересов данного пользователя на основе характеристик объектов, оцененных им [2]. Профиль представляет собой структурированное представление интересов пользователей, адаптированное для процесса построения рекомендаций. Процесс построения рекомендаций в основном состоит в сопоставлении атрибутов профиля пользователя с атрибутами содержимого объекта. Результатом является оценка релевантности, которая отражает уровень интереса пользователя к этому объекту. Если профиль точно отражает предпочтения пользователя, это дает огромное преимущество для эффективности процесса доступа к информации. Например, его можно использовать для фильтрации результатов поиска, решая, заинтересует ли пользователя конкретный онлайн-курс или нет, и, в отрицательном случае, предотвращая его отображение.
Системы CBF нуждаются в надлежащих методах для представления элементов и создания профиля пользователя, а также в некоторых стратегиях для сравнения профиля пользователя с представлением элемента. Архитектура высокого уровня системы рекомендаций, основанной на контенте, изображена на рисунке 1.
Процесс рекомендации выполняется в три этапа, каждый из которых обрабатывается отдельным компонентом [2]:
- Анализатор содержимого. Когда информация не имеет структуры (например, в виде текста), то необходим какой-то этап предварительной обработки для извлечения структурированной релевантной информации. Основная ответственность данного компонента заключается в представлении содержимого элементов (например, документов, веб-страниц, новостей, описаний продуктов и т. д.), поступающих из источников информации, в форме, подходящей для последующих этапов обработки. Элементы данных анализируются методами извлечения признаков (feature extraction), чтобы изменить представление элементов из исходного информационного пространства в целевое (например, описание онлайн-курсов, представленные в виде векторов ключевых слов). Это представление является входными данными для следующих компонентов;
- Анализатор профиля. Этот модуль собирает данные, представляющие предпочтения пользователя, и пытается обобщить эти данные, чтобы построить его профиль. Обычно стратегия обобщения реализуется с помощью методов машинного обучения, которые могут вывести модель интересов пользователя, исходя из элементов, которые нравились или не нравились в прошлом. Например, система рекомендаций онлайн-курсов может реализовать метод обратной связи по релевантности, в котором объединяются векторы положительных и отрицательных примеров в вектор-прототип, представляющий профиль пользователя. Примеры обучения в таком случае — это онлайн-курсы, о которых пользователь оставил положительный или отрицательный отзыв;
- Фильтрующий компонент. Этот модуль сопоставляет представление профиля пользователя с представлением элементов, и определяет те объекты, которые следует рекомендовать. Результатом является двоичная или непрерывная оценка релевантности [2], в последнем случае получается ранжированный список потенциально интересных элементов. В вышеупомянутом примере сопоставление реализуется путем вычисления косинусного коэффициента сходства между вектором-прототипом и векторами элементов.
Первый шаг процесса рекомендации — это тот, который выполняется Анализатором содержимого. Описания элементов и их содержимое (например, ключевые слова, n-граммы, концепции, теги и т.д.), поступающие из некоторого источника информации, обрабатываются, структурируются и помещаются в некоторое хранилище представлений элементов. Чтобы создать и обновить профиль активного пользователя 𝑢𝑎 (пользователя, для которого должны быть предоставлены рекомендации), его реакции на элементы каким-либо образом собираются и записываются в репозиторий Feedback. Эти реакции, называемые обратной связью пользователя 𝑢𝑎, вместе с описаниями связанных элементов, используются в процессе обучения модели, полезной для прогнозирования фактической релевантности вновь представленных элементов. Пользователи также могут явно определить свои области интересов в качестве начального профиля без какой-либо обратной связи.
Системы фильтрации на основе контента имеют несколько преимуществ по сравнению с системами коллаборативной фильтрации:
- Пользовательская независимость. Системы рекомендаций на основе контента используют исключительно рейтинги, предоставленные активным пользователем, для создания своего собственного профиля. Вместо этого системы CF нуждаются в оценках других пользователей, чтобы найти «ближайших соседей» активного пользователя, то есть пользователей, которые имеют схожие вкусы, поскольку они оценили одни и те же элементы одинаково. Тогда будут рекомендованы только те предметы, которые больше всего понравились соседям активного пользователя;
- Прозрачность рекомендаций. Объяснение того, как работает рекомендательная система, может быть предоставлено путем явного перечисления описаний объекта, которые привели к появлению элемента в списке рекомендаций. Эти функции являются факторами, к которым следует обратиться, чтобы решить, доверять ли рекомендации. И наоборот, системы коллаборативной фильтрации — это «черные ящики», поскольку единственное объяснение рекомендации элемента состоит в том, что этот элемент понравился неизвестным пользователям со схожими вкусами;
- Отсутствие проблемы холодного старта. Системы CBF могут рекомендовать элементы, еще не оцененные ни одним пользователем. В системах CF существуют методы, которые полагаются исключительно на предпочтения пользователей при составлении рекомендаций. Таким образом, пока новый товар не будет оценен для значительного числа пользователей, система не сможет его рекомендовать.
Тем не менее, системы фильтрации на основе контента имеют несколько недостатков:
- Ограниченные возможности анализа содержимого. Методы на основе фильтрации контента имеют естественный предел количества и типов функций, автоматически или вручную связанных с рекомендуемыми ими объектами. Часто требуется знание предметной области, например, для рекомендаций по фильму система должна знать актеров и режиссеров, а иногда также необходимы онтологии предметной области. Некоторые представления охватывают только определенные аспекты контента, но есть много других, которые могут повлиять на восприятие пользователем. Для онлайн-курсов методы извлечения информации из описания могут полностью проигнорировать эстетические качества и дополнительную мультимедийную информацию. Подводя итог, можно сказать, что как автоматическое, так и ручное присвоение характеристик элементам не может быть достаточным для определения отличительных аспектов элементов, которые оказываются необходимыми для выявления интересов пользователя;
- Сверхспециализация. Системы CBF не имеют встроенного метода поиска чего-то неожиданного. Система предлагает элементы с высокими оценками при сопоставлении с профилем пользователя, поэтому пользователю будут рекомендованы элементы, аналогичные уже оцененным. Этот недостаток также называют проблемой интуиции, чтобы подчеркнуть тенденцию контент-ориентированных систем давать рекомендации с ограниченной степенью новизны. Например, когда пользователь оценил только фильмы режиссера Стэнли Кубрика, ему будут рекомендовать именно такие фильмы. Идеальный метод, основанный на содержании, редко может найти что-то новое, ограничивая диапазон приложений, для которых он будет быть полезным;
- Проблема новичка. Необходимо собрать достаточное количество оценок, прежде чем система рекомендаций, основанная на контенте, сможет действительно понять предпочтения пользователя и предоставить ему точные рекомендации. Поэтому, когда доступно мало оценок, как для нового пользователя, система не сможет дать надежные рекомендации.
Потенциальные преимущества сочетания совместной и контентной фильтрации изучались в ряде работ. Самый простой гибридный подход — это раздельная реализация методов CBF и CF с последующим объединением их прогнозов [4]. В другом подходе информация о содержании и информации о рейтинге сначала объединяются для получения данных, которые служат смешанными входными данными для предикторов. В работе [5] автор предложил представлять каждый профиль пользователя вектором взвешенных слов, выбранных из описаний контента с использованием алгоритма Винноу. Затем матрица профилей пользователей используется в качестве входных данных для коллаборативной фильтрации вместо матрицы пользовательских элементов. Система FAB [6] использует анализ контента для создания профилей пользователей на основе отзывов о релевантности, которые затем используются для создания персональных фильтров. В работе [6] использовали предсказатель, основанный исключительно на контенте, для расчета так называемых псевдорейтингов. Авторы использовали прогнозируемые рейтинги для увеличения вектора оценок пользователей перед применением методов CF.
Другое семейство подходов создает общую унифицированную модель рекомендаций и рассматривает прогнозирование рейтингов пользователей как проблему машинного обучения, в которой предикторы узнаются из размеченных примеров [6].
Благодаря интуитивно понятному представлению и доступности алгоритмов на основе графов, модели на основе графов использовались в ряде рекомендательных систем. В работе [6] отношения между пользователями представлены в виде ориентированного графа, в котором ребро, соединяющее двух пользователей, указывает на то, что поведение исходного пользователя сильно зависит от поведения целевого пользователя. Также в работе [6] представили модель на основе графов, которая включает как пользователей, так и объекты для рекомендаций. Взвешенное ребро между двумя узлами элементов представляет собой сходство между двумя элементами, которое предварительно вычисляется на основе их контента. Эта модель позволяет собирать как контентную, так и рейтинговую информацию в единой структуре. Также существует модель [6], где авторы использовали транзитивные ассоциации в модели на основе графов для решения проблемы разреженности данных.
Подходы к прогнозированию, рассмотренные выше, не фокусировались на изменении популярности товаров, объектов и вкусов пользователей с течением времени. Темпоральные (временные) рекомендательные системы (Temporal RS, TRS) [7] разработаны, чтобы рекомендовать элементы пользователям в подходящее время; время является важным фактором при принятии окончательного решения и используется во многих подходах для получения точных прогнозов. Следовательно, временное направление является многообещающим направлением для улучшения качества рекомендательных систем путем отслеживания интересов пользователей с течением времени. Существует несколько подходов, доступных для TRS, например, подход CF с временными весами [7], который улучшает качество системы рекомендаций за счет увеличения весов недавних рейтинговых оценок. В настоящее время подходы факторизации идентичны успешным подходам для CF/CBF систем. Влияние временного периода на предпочтения пользователей разделяется на два вида — это долгосрочные предпочтения и краткосрочные предпочтения.
Существуют и более сложные гибридные рекомендательные системы. В частности, система GraFC2T2 [8] использует информацию о контенте, временную информацию и информацию о доверии в модели графа и применяет персонализированный алгоритм PageRank для построения рекомендаций. Результаты показывают, что объединение различных видов информации обычно улучшает рекомендацию. Это показывает актуальность гибридных моделей.
Применение гибридных, темпоральных и графовых систем позволяет решить также и проблему «холодного старта», а также проблему «новичка», путем перекрытия недостатков одного вида рекомендательных систем достоинствами другого вида [3]. Применение графов позволяет сократить размер матрицы пользовательских оценок, размер пространства поиска элементов. Анализируя контент узлов графа, можно решить проблему «холодного старта» в гибридной системе. Использование временных характеристик позволяет отслеживать «тренд», кратко- и долгосрочные предпочтения пользователей и формировать рекомендации для новых пользователей, комбинируя метод коллаборативной фильтрации и временную рекомендательную систему.
Гибридные модели также показывают куда более высокую точность рекомендаций, однако значительно более сложны в разработке и требуют глубокого понимания предметной области. Перспективы дальнейших исследований: будет предложена к рассмотрению архитектура гибридной сети с применением графов и временных характеристик в приложении к задаче рекомендаций онлайн-курсов.
Список литературы
- Оболенский, Д. М. Обзор современных методов построения рекомендательных систем на основе коллаборативной фильтрации / Д. М. Оболенский, В. И. Шевченко // Мир компьютерных технологий: Сборник статей всероссийской научно-технической конференции студентов, аспирантов и молодых ученых, Севастополь, 06–10 апреля 2020 года / Науч. редактор Е.Н. Мащенко. – Севастополь: СевГУ, 2020. – С. 97-102.
- Lops P., de Gemmis M., Semeraro G. Content-based Recommender Systems: State of the Art and Trends // Recommender Systems Handbook. 2011. С. 73-105.
- Кузнецов, Н. О. Предложение решений проблемы холодного старта рекомендательных систем / Н. О. Кузнецов, Г. С. Иванова // Технологии инженерных и информационных систем. – 2020. – № 2. – С. 38-42.
- Claypool, M., Gokhale, A., Miranda, T., Murnikov, P., Netes, D., Sartin, M.: Combining content-based and collaborative fillters in an online newspaper. // Proc. of ACM SIGIR Workshop on Recommender Systems, 1999.
- Pazzani, M.J.: A framework for collaborative, content-based and demographic filtering. Artificial Intelligence Review, 13(5-6). 1999. C. 393–408.
- Nguyen Duy P., Thang L., Phuong T. A Graph-Based Method for Combining Collaborative and Content-Based Filtering // Proceedings of PRICAI 2008: Trends in Artificial Intelligence, 10th Pacific Rim International Conference on Artificial Intelligence, Hanoi, Vietnam. 2008. C. 859-869.
- Al-Hadi I., Sharef N., Sulaiman M. Review of the temporal recommendation system with matrix factorization. International journal of innovative computing, information & control: IJICIC. 2017, №13 (5), С. 1579 – 1594.
- Nzekon Nzeko’O A. J., Tchuente M., Latapy M. A general graph-based framework for top-N recommendation using content, temporal and trust information // Journal of Interdisciplinary Methodologies and Issues in Science, 2019.