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

Вводный пост Машинное обучение: с чего начать… можно найти здесь, а Обозреватель алгоритмов - здесь.

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

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

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

Случаи применения

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

Наиболее распространенные методы механизма рекомендаций

Ниже представлены наиболее распространенные методы предоставления рекомендаций: Рекомендации на основе содержимого, совместная фильтрация на основе памяти и Фильтр совместной работы на основе модели.

Рекомендации на основе содержания

Основанные на содержании рекомендатели предлагают товары, похожие на те, которые уже понравились покупателю, явно (например, по рейтингу) или неявно (путем покупки). Этот тип системы использует метаданные, описывающие элемент.

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

Плюсы

  • Быстро внедрить
  • Нет предвзятого отношения к популярности - могу порекомендовать новинки
  • Результаты интерпретируемы

Минусы

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

Словарь

Метаданные - данные, описывающие предмет, его особенности. Например. для фильма метаданные - это его жанр, продолжительность, актеры и т. д.

Вектор. Вектор признаков - это серия чисел, описывающих характеристики наблюдений, например бренд, слова, включенные в описание, цена и т. д.

Показатель расстояния. Показатель расстояния - это функция, которая вычисляет расстояние между элементами. Примеры включают евклидово расстояние и косинусное расстояние.

Проблема с холодным запуском. Термин «проблема с холодным запуском» возник из-за того, что автомобили не работают должным образом, когда их оставили на морозе. Когда механизм рекомендаций не имеет достаточных данных о пользователе, он не работает очень хорошо.

Совместная фильтрация на основе памяти

Совместная фильтрация - это метод прогнозирования интереса пользователя путем анализа предпочтений других пользователей. Существует два типа: фильтрация на основе пользователей и фильтрация на основе элементов.

Фильтрация на основе памяти вычисляет сходство между пользователями или элементами, чтобы сделать прогноз. Типичный подход - алгоритм на основе соседства; s мера сходства определяет пользователей, наиболее похожих на пользователя, или элементы по отношению к элементам, уже оцененным пользователем. Прогнозируемая оценка для элемента может быть рассчитана путем объединения собранных оценок, возможно, взвешивания каждой по значению сходства. .

Плюсы

  • Быстро внедрить
  • Результаты интерпретируемы
  • Предложения, основанные на пользователях, могут приводить к разнообразному набору предложений для разных доменов.

Минусы

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

Словарь

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

Фильтрация по элементам. Фильтрация по элементам позволяет выявлять похожие элементы на основе ранее понравившихся.

Алгоритм на основе соседства - мера сходства определяет пользователей, наиболее похожих на пользователя, или элементы, наиболее похожие на элементы, уже оцененные пользователем. Они называются «окрестностями», как если бы вы построили точки данных, это были бы самые близкие

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

Объединение - это способ объединения данных, который обычно осуществляется путем взятия среднего среднего значения.

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

Проблема с холодным запуском. Термин «проблема с холодным запуском» возник из-за того, что автомобили не работают должным образом, когда их оставили на морозе. Когда механизм рекомендаций не имеет достаточных данных о пользователе, он не работает очень хорошо.

Совместная фильтрация на основе моделей

Совместная фильтрация - это метод прогнозирования интереса пользователя путем анализа предпочтений других пользователей. Существует два типа: фильтрация на основе пользователей и фильтрация на основе элементов.

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

Плюсы

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

Минусы

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

Словарь

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

Фильтрация по элементам. Фильтрация по элементам позволяет выявлять похожие элементы на основе ранее понравившихся.

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

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

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

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

Дальнейшее чтение

Другие публикации из этой серии:

Огромное спасибо

Я хочу поблагодарить Сэма Роуза за его отличную работу по разработке интерфейса (и терпение!), Превратив мою необработанную идею в нечто гораздо более удобное, оптимизированное и эстетически приятное.

Точно так же мои навыки рисования оставляют желать лучшего, поэтому спасибо Мэри Ким за то, что добавили художественной изюминки в эту работу!