Введение
В последние годы цифровые туристические платформы стали одним из основных источников информации для путешественников. Пользователи получают доступ к большому количеству данных о городах, достопримечательностях, гостиницах, маршрутах и туристических объектах. Однако увеличение объёма информации приводит к проблеме информационной перегрузки, из-за чего пользователям становится сложнее быстро находить подходящие туристические направления.
Для решения данной проблемы активно используются интеллектуальные рекомендательные системы. Такие системы применяются в электронной коммерции, социальных сетях, видеосервисах и туристических платформах [1]. Их основная задача заключается в формировании персонализированных рекомендаций на основе интересов и поведения пользователей.
В туристической сфере рекомендательные системы позволяют учитывать текстовые запросы пользователей, историю просмотров, предпочтения схожих пользователей и поведенческие данные. Наиболее распространёнными подходами являются Content-Based Filtering и Collaborative Filtering [2]. Первый метод анализирует текстовое описание объектов, а второй — поведение пользователей и взаимодействия между ними.
Несмотря на эффективность отдельных моделей, каждая из них имеет ограничения. Content-Based Filtering недостаточно учитывает коллективный опыт пользователей, а Collaborative Filtering сталкивается с проблемой недостатка данных и холодного старта. В связи с этим всё чаще используются гибридные модели, объединяющие преимущества нескольких методов одновременно.
Цель данной работы — разработка гибридной рекомендательной системы для туристической сферы, которая объединяет анализ текста, пользовательское поведение и методы collaborative filtering для повышения качества рекомендаций.
Анализ существующих исследований
Исследования в области рекомендательных систем активно развиваются в течение последних лет. В работе F. Ricci и соавторов [1] рассматриваются основные типы рекомендательных систем, включая collaborative filtering, content-based filtering и гибридные подходы. Авторы отмечают, что гибридные модели позволяют повысить качество рекомендаций и уменьшить влияние проблемы холодного старта.
C. Aggarwal [2] подчёркивает, что collaborative filtering является одним из наиболее распространённых методов персонализации, поскольку учитывает взаимодействие между пользователями и объектами. Однако при недостатке данных точность рекомендаций может снижаться.
В исследованиях, посвящённых обработке текстовых данных, широко применяется алгоритм TF-IDF, позволяющий преобразовывать текстовую информацию в числовую форму [3]. В сочетании с Cosine Similarity данный метод используется для оценки сходства между пользовательским запросом и текстовыми описаниями объектов.
Современные туристические платформы также используют анализ поведения пользователей, включая просмотры, клики и лайки. Подобный подход позволяет определить уровень заинтересованности пользователя и повысить точность рекомендаций.
На основе анализа существующих исследований было принято решение использовать гибридную архитектуру, объединяющую методы анализа текста и пользовательского поведения.
Используемые данные
Для разработки системы использовались открытые туристические наборы данных, структуры которых аналогичны Kaggle и TripAdvisor datasets. Дополнительно применялись синтетические тестовые данные пользователей.
В базе данных хранились:
– названия туристических направлений;
– текстовые описания объектов;
– категории и рейтинги;
– пользовательские действия (view, click, like);
– данные пользователей.
Все данные были предварительно структурированы и загружены в SQLite базу данных.
Основные методы системы
Content-Based Filtering
Метод Content-Based Filtering основан на анализе текстовых описаний туристических объектов. Для обработки текста используется алгоритм TF-IDF, позволяющий определить важность слов в документах [3].
После векторизации текста вычисляется Cosine Similarity между пользовательским запросом и туристическими направлениями. Чем выше значение косинусного сходства, тем более релевантным считается объект.
Collaborative Filtering
Collaborative Filtering основан на анализе поведения пользователей и поиске схожих предпочтений [2]. В системе учитываются действия пользователей:
– просмотр (view);
– клик (click);
– лайк (like).
Для поиска похожих пользователей используется Cosine Similarity между строками пользовательской матрицы взаимодействий.
Анализ пользовательского поведения
Для количественной оценки действий пользователей применяются весовые коэффициенты, представленные в таблице 1.
Таблица 1
Вес действий пользователя
|
Действие |
Вес |
|
View |
1 |
|
Click |
4 |
|
Like |
8 |
Использование весов позволяет преобразовать поведение пользователя в числовой формат и учитывать уровень заинтересованности.
Архитектура системы
Система реализована в виде веб-приложения и состоит из следующих модулей:
- пользовательский интерфейс;
- модуль обработки текста;
- модуль анализа поведения;
- рекомендательный модуль;
- база данных SQLite;
- административная панель.
Схема работы системы
Пользователь → Ввод запроса → TF-IDF → Cosine Similarity → Анализ поведения → Collaborative Filtering → Гибридная модель → Результат
Используемые технологии
Таблица 2
Используемые технологии
|
Технология |
Назначение |
|
Python |
Основная разработка |
|
Flask |
Веб-приложение |
|
SQLite |
Хранение данных |
|
Pandas |
Обработка данных |
|
Scikit-learn |
ML-алгоритмы |
|
HTML/CSS |
Интерфейс пользователя |
Python был выбран благодаря широким возможностям для анализа данных и машинного обучения [4].
Гибридная модель рекомендаций
В разработанной системе используется гибридная модель рекомендаций. Итоговый результат рассчитывается по следующей формуле:
Content × 0.40 + Collaborative × 0.25 + Behavior × 0.20 + Age × 0.15
Где:
– Content — текстовое сходство;
– Collaborative — действия похожих пользователей;
– Behavior — история действий пользователя;
– Age — возрастная корреляция.
Нормализация результатов позволяет избежать доминирования одного из факторов и обеспечить более стабильную работу системы.
Результаты тестирования
Для проверки работоспособности системы использовались тестовые пользовательские запросы и данные о взаимодействии пользователей с туристическими объектами.
Результаты тестирования показали:
– корректную обработку текстовых запросов;
– устойчивую работу гибридной модели;
– улучшение качества рекомендаций по сравнению с использованием только Content-Based Filtering;
– возможность персонализации рекомендаций.
Таблица 3
Сравнение методов рекомендаций
|
Метод |
Преимущества |
Недостатки |
|
Content-Based |
Анализ текста |
Ограниченная персонализация |
|
Collaborative |
Учет поведения пользователей |
Проблема холодного старта |
|
Hybrid |
Более точные рекомендации |
Более сложная реализация |
Гибридный подход показал наиболее стабильные результаты благодаря объединению нескольких методов одновременно.
Заключение
В ходе исследования была разработана интеллектуальная гибридная рекомендательная система для туристической сферы. В системе были реализованы методы анализа текста, collaborative filtering и анализ пользовательского поведения.
Разработанная модель позволяет формировать персонализированные рекомендации на основе текстовых запросов, действий пользователей и поведенческих данных. Для обработки текстовой информации использовались алгоритмы TF-IDF и Cosine Similarity, а для анализа взаимодействий пользователей — collaborative filtering.
В работе были использованы открытые туристические данные и тестовые пользовательские данные, что позволило сформировать структуру базы данных и протестировать работу системы в различных сценариях.
Результаты тестирования показали, что использование гибридного подхода позволяет повысить релевантность рекомендаций по сравнению с использованием отдельных методов. Кроме того, система обладает расширяемой архитектурой и может быть интегрирована с внешними API и онлайн туристическими платформами.
Практическая значимость работы заключается в возможности применения подобных систем в туристических веб-сервисах, системах бронирования и интеллектуальных платформах персонализированных рекомендаций.
Литература:
- Ricci F., Rokach L., Shapira B. Recommender Systems Handbook. — Springer, 2015.
- Aggarwal C. Recommender Systems: The Textbook. — Springer, 2016.
- Manning C., Raghavan P., Schütze H. Introduction to Information Retrieval. — Cambridge University Press, 2008.
- Géron A. Hands-On Machine Learning with Scikit-Learn, Keras and TensorFlow. — O’Reilly Media, 2019.
- Burke R. Hybrid Recommender Systems: Survey and Experiments // User Modeling and User-Adapted Interaction. — 2002.
- Adomavicius G., Tuzhilin A. Toward the Next Generation of Recommender Systems // IEEE Transactions on Knowledge and Data Engineering. — 2005.
- Salton G., Buckley C. Term-weighting approaches in automatic text retrieval // Information Processing & Management. — 1988.
- Schafer J., Konstan J., Riedl J. Recommender Systems in E-Commerce // ACM Conference on Electronic Commerce. — 1999.
- Zhang Y., Chen X. Explainable Recommendation: A Survey and New Perspectives // Foundations and Trends in Information Retrieval. — 2020.
- Koren Y., Bell R., Volinsky C. Matrix Factorization Techniques for Recommender Systems // IEEE Computer. — 2009.

