- Введение
- Что такое рекомендательная система?
- Что такое система рекомендаций по совместной фильтрации?
- Матрица взаимодействия пользователя и элемента
- Типы коллаборативной фильтрации
- 1. Совместный подход, основанный на памяти
- 2. Основанный на модели подход к совместной работе
- Коллаборативная фильтрация: преимущества и недостатки
Введение
Вы замечали, что когда вы смотрите DIY или комедийное видео на YouTube, вы автоматически начинаете получать похожие рекомендации в своей ленте? Почему это так? Как это работает? Как приложение узнает о ваших лайках и предпочтениях? Ну, это все из-за систем рекомендаций.
Что такое рекомендательная система?
Приложения и веб-сайты собирают данные от пользователей, чтобы предсказать их предпочтения, интересы, симпатии и даже антипатии. Это помогает им рекомендовать контент, который может понравиться пользователям. Итак, системы рекомендаций используются для предложения пользователям схожего контента и идей на основе их мышления и вкусов.
Существует два типа рекомендательных систем:
- Совместная фильтрация
- Фильтрация на основе контента
В этом блоге мы в первую очередь сосредоточимся на методе совместной фильтрации.
Что такое система рекомендаций по совместной фильтрации?
Многие системы рекомендаций используют совместную фильтрацию для выявления схожих моделей использования и предложения контента, который может понравиться похожим пользователям. Она отфильтровывает продукты или позиции, которые нравятся пользователям, на основе оценок и реакций похожих пользователей. Вместо того, чтобы использовать характеристики элементов для их рекомендации, система рекомендаций по совместной фильтрации классифицирует пользователей по кластерам схожих типов и рекомендует каждого из них на основе предпочтений их кластеров.
Эта система фильтрации использует прошлые взаимодействия между покупателями и продуктами, которые они использовали, для предложения новых товаров. Здесь характеристики товаров не важны, поскольку взаимодействия между пользователем и товаром сохраняются и используются в наборе взаимодействий между пользователем и товаром.
Проще говоря, система совместной фильтрации учитывает всех пользователей и предлагает новые или специфические продукты основным пользователям на основе людей со схожими вкусами и интересами.
Существует два типа взаимодействия между пользователями и продуктами:
- Во-первых, прямой поиск и неявная обратная связь, такая как история заказов, клики, чтение или воспроизведение определенного контента и т.д.
- Во-вторых, прямая обратная связь с клиентами, такая как рейтинги фильмов, кнопки “Не нравится” или “Мне нравится”, присвоение звезд сервису или альбому и т.д.
Примером совместной фильтрации является прогнозирование рейтинга пользователя на основе его оценок других фильмов и оценок других пользователей для всех фильмов. Новости, фильмы, приложения и другие платформы часто используют этот тип алгоритма совместной фильтрации.
Матрица взаимодействия пользователя и элемента
Алгоритм совместной фильтрации игнорирует атрибуты конкретного продукта и фокусируется на группе похожих клиентов, использующих продукт, и рекомендует другие продукты, которые нравятся группе. Она делит группу похожих пользователей на более мелкие кластеры и предлагает продукты на основе предпочтений этого конкретного кластера. Вот пример рекомендации фильма.:
Из приведенной матрицы пользовательских элементов мы можем сделать следующий вывод:
- Пользователям 1 и 2 понравился фильм 1. Поскольку пользователю 1 понравились фильмы 2 и 4, есть вероятность, что пользователю 2 понравятся те же фильмы.
- У пользователей 1 и 3 разные вкусы.
- Пользователям 3 и 4 не понравился фильм 2, поэтому, скорее всего, пользователю 4 не понравится фильм 4. Также пользователю 3 не понравится фильм 1.
Именно так работает матрица взаимодействия пользователя и элемента для финансирования кластеров похожих пользователей посредством совместной фильтрации в машинном обучении.
Типы коллаборативной фильтрации
Существует два типа совместной фильтрации:
1. Совместный подход, основанный на памяти
Система рекомендаций по совместной фильтрации на основе памяти использует только матрицу взаимодействия пользователя с товаром, чтобы предлагать пользователям новые продукты. Процесс основан на предыдущих взаимодействиях и рейтингах пользователей. Фильтрация на основе памяти может выполняться двумя способами:
- Совместная фильтрация на основе пользователя
Она предлагает новые продукты конкретному пользователю путем создания группы похожих пользователей на основе взаимодействия с эталонным пользователем. Она предлагает товары, которые наиболее популярны во вновь созданной группе, но являются новыми для целевого пользователя.
- Совместная фильтрация на основе элементов
Система совместной фильтрации на основе элементов выбирает новые рекомендации на основе прошлых взаимодействий целевых пользователей. Она учитывает все продукты, которые понравились пользователям, вычисляет похожие продукты, создает кластеры и предлагает новые продукты из этих кластеров.
2. Основанный на модели подход к совместной работе
Этот подход использует модели машинного обучения для прогнозирования и ранжирования взаимодействий между пользователями и продуктами, с которыми они еще не взаимодействовали. Модели обучаются с использованием информации о взаимодействии, доступной из матрицы взаимодействия, путем развертывания нескольких алгоритмов, таких как глубокое обучение, матричная факторизация, кластеризация и т.д.
Коллаборативная фильтрация: преимущества и недостатки
Преимущества
- Это может помочь пользователям находить новые продукты и интересы, даже если они их не ищут. Система рекомендаций предлагает варианты, соответствующие их интересам и вкусам.
- Для этого не требуется знания предметной области, поскольку все функции изучаются автоматически.
- Для обучения модели факторизации матрицы не нужны контекстуальные данные или подробные характеристики продуктов, а просто матрица взаимодействия пользователя и элемента.
Недостатки
- В долгосрочной перспективе ей не хватает разнообразия, что может стать проблемой, поскольку ключевой функцией системы совместных рекомендаций является предложение пользователям новых продуктов или контента. Однако алгоритм основан на исторических рейтингах, поэтому он не может рекомендовать что-либо с ограниченными данными.
- Недостаток данных может привести к трудностям с рекомендацией новых продуктов пользователям, поскольку предложения основаны на взаимодействиях пользователей и исторических данных.
- Популярные продукты будут становиться все более популярными в долгосрочной перспективе, что создаст ограниченный рынок для новых и разнообразных продуктов.
- С увеличением числа пользователей алгоритм может пострадать из-за большого объема данных и недостаточной масштабируемости.