Подсчет очков

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

Примеры
  • Связанные элементы из модели матричной факторизации.
  • Пользовательские функции, учитывающие персонализацию.
  • «Местные» и «удаленные» предметы; то есть с учетом географической информации.
  • Популярные или трендовые товары.
  • Социальный граф; то есть предметы, которые понравились или рекомендовали друзья.

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

  • функции запроса (например, история просмотров пользователя, язык, страна, время)
  • функции видео (например, заголовок, теги, встраивание видео)

Затем система может ранжировать видео в пуле кандидатов в соответствии с прогнозом модели.

Почему бы не позволить Генератору Кандидатов Оценить?

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

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

Выбор целевой функции для оценки

Как вы, возможно, помните из статьи « Введение в ML Problem Framing », ML может вести себя как озорной джинн: очень рад узнать цель, которую вы ставите, но вы должны быть осторожны со своими желаниями. Это озорное качество распространяется и на рекомендательные системы. Выбор функции оценки может существенно повлиять на ранжирование элементов и, в конечном счете, на качество рекомендаций.

Например:

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

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

Позиционная предвзятость в подсчете очков

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

Решения

  • Создавайте позиционно-независимые рейтинги.
  • Ранжируйте всех кандидатов так, как будто они находятся в верхней позиции на экране.