Что такое рекомендательная система

Система рекомендаций — это подкласс систем фильтрации информации, который стремится предсказать рейтинг или предпочтение, которое пользователь может дать элементу. Проще говоря, это алгоритм, который предлагает пользователям релевантные элементы. Например: в случае Medium, какой блог читать, в случае Netflix, какой фильм смотреть, или в случае электронной коммерции, какой продукт покупать и т. д.

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

Варианты использования системы рекомендаций

Есть много вариантов его использования. Некоторые

A. Персонализированный контент. Помогает улучшить взаимодействие с сайтом, создавая динамические рекомендации для разных аудиторий, как это делает Netflix.

B. Улучшенный поиск: помогает классифицировать контент на основе его характеристик. Например: возраст, местоположение и т. д.

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

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

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

Как работает система средних рекомендаций

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

Данные

Во-первых, он собирает данные, на носителе доступно 3 типа данных.

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

Выбор функций

Название блога:это важный фактор, который позволяет читателям находить блоги и извлекать заголовки для рекомендаций.

Теги . Выбор правильных тегов может помочь блогу стать популярным и увеличить посещаемость блога.

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

Модели машинного обучения

Индивидуальные рекомендации.Эти рекомендации различны для каждого читателя в зависимости от его взаимодействия с блогами на носителе. У нас есть в целом два типа в этой рекомендации. Ниже приведены типы:

  1. Фильтрация на основе содержания

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

2. Совместная фильтрация
Модели совместной фильтрации используют совместную силу оценок, предоставленных несколькими пользователями, для выработки рекомендаций. Основная идея заключается в том, что неуказанные рейтинги могут быть вычислены, потому что наблюдаемые рейтинги часто сильно коррелируют между различными пользователями и элементами.

Существует 2 типа совместной фильтрации:

  1. На основе памяти
  2. Модельный

На основе памяти:

Этот подход вычисляет сходство пользователей на основе блогов, с которыми они взаимодействовали (подход на основе пользователей), или вычисляет сходство блогов на основе пользователей, которые с ними взаимодействовали (подход на основе блогов) (подход на основе элементов).

На основе модели:

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

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

Рекомендация по популярности: на канале Medium также можно увидеть колонку популярных сообщений в блоге на канале Medium. Эти рекомендации полностью основаны на взаимодействии пользователя с блогом.

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

Метрики оценки:

Давайте посмотрим, как мы можем оценить нашу Систему рекомендаций.

Есть два разных важных подпроцесса оценки:

  1. Оценка в автономном режиме
  2. Онлайн-тестирование A/B

Онлайн-показатели.этоэмпирические результаты, наблюдаемые при взаимодействии пользователей с рекомендациями в режиме реального времени, предоставляемыми в реальной среде. Самый эффективный способ сделать это — провести A/B-тестирование.

Тогда почему мы пытаемся оценить наши рекомендательные системы в автономном режиме?

Потому что это ЕДИНСТВЕННЫЕ индикаторы, на которые вы можете обратить внимание при разработке своих систем рекомендаций. Всегда предпочитая использовать онлайн-метрики для сбора данных о поведении пользователей и оценки вашей системы, это дорого и требует много времени. Более того, когда от пользователей требуется постоянная обратная связь, они могут стать более нерешительными в отношении использования нашей платформы и вообще не использовать ее. Хорошая точность в офлайн-метриках, сопровождаемая хорошими онлайн-оценками A/B, — это то, что вам нужно.

Мы рассмотрим различные способы оценки нашей системы рекомендаций в автономном режиме в последующих разделах этой статьи.

Вот некоторые из офлайн-методов оценки:

  1. СРЕДНЕКВАДРАТИЧЕСКАЯ ОШИБКА (RMSE)

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

Преимущество использования RMSE заключается в том, что он больше наказывает термин, когда ошибка высока.

2. КАРТА@K / MAR@K:

Рекомендательная система обычно создает упорядоченный список рекомендаций для каждого пользователя в тестовом наборе. MAP@K дает представление о том, насколько актуален список рекомендуемых элементов, тогда как MAR@K дает представление о том, насколько хорошо рекомендатель может вспомнить все элементы, которые пользователь оценил положительно в тестовом наборе.

Некоторые другие офлайн-метрики: частота просмотров, охват, новизна, персонализация и т. д.

Развертывание модели

Если мы не можем заставить модель машинного обучения работать в производственной среде, то эта модель бесполезна. Это похоже на письменный блог, который никогда не публиковался. Вот почему развертывание модели является одним из самых важных шагов.

Заключение

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

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

Рекомендации

  1. https://medium.com/fnplus/evaluating-recommender-systems-with-python-code-ae0c370c90be
  2. https://www.analyticsvidhya.com/blog/2021/07/recommendation-system-understanding-the-basic-concepts/#h2_4

Надеюсь, поможет !!!