Алгоритм рекомендаций Netflix позволяет каждому увидеть разные постеры фильмов

машинное обучение искусственный интеллект алгоритм модульный тест
Алгоритм рекомендаций Netflix позволяет каждому увидеть разные постеры фильмов

Эта статья написана [Передовая линия ИИ] Оригинал, исходная ссылка:t.cn/RTGs81x


Руководство по передовой ИИ:Не так давно новость о том, что Netflix запустил алгоритм персонализированных рекомендаций с поэтапным тестированием, а скорость вычислений была увеличена в 100 раз, чтобы убить A/B-тесты, вызвала настоящий ажиотаж. Всего через неделю видеосайт объявил, что они использовали алгоритмы рекомендаций контекстных бандитов для персонализации видеоизображений.


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

Изображение или изображение, используемое для описания видео, — один из способов легко решить эту проблему. Если картинка достаточно привлекательна для пользователя, например, знакомый актер, вызывающая адреналин автомобильная погоня или драматическая сцена, являющаяся сутью фильма или телепередачи (картинка стоит тысячи слов), она побудит пользователей нажать на видео. Именно этим Netflix отличается от традиционных медиа-продуктов: у нас более 100 миллионов продуктов, предлагающих персональные рекомендации и индивидуальные визуальные эффекты для каждого пользователя.

              (домашняя страница Netflix без изображений)

Ранее мы обсуждали, как подобрать лучшие изображения для видео всех участников. С помощью алгоритма многорукого бандита мы можем найти наиболее подходящее изображение для видео.В качестве примера возьмем «Очень странные дела», это видео имеет самую высокую скорость воспроизведения пользователями. Однако, учитывая огромные различия во вкусах и предпочтениях пользователей, не лучше ли было бы найти точки предпочтения для каждого пользователя и показать на картинке то, что им больше всего интересно?

 (Иллюстрация к сериалу "Очень странные дела", разные изображения относятся к разным темам сериала)

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

Мы разработали персонализированную графику для фильма «Умница Уилл Хантинг» на основе предпочтений каждого пользователя в отношении различных жанров и тем. Для тех, кто видел много романтических фильмов, если его избранное изображение включает Мэтта Дэймона и Минни Драйвер, его может заинтересовать Умница Уилл Хантинг. А если это пользователь, который смотрел много комедий, мы включаем информацию о хорошо -известный комик Робин Уильямс (Robin Williams) в карте рекомендаций, и шансы на его привлечение могут быть выше.

Кроме того, какое влияние окажут персонализированные изображения на пользователей, которым нравятся разные актеры? В случае с «Криминальным чтивом» пользователь, который смотрел много фильмов с Умой Турман, может более позитивно отреагировать на изображение, содержащее информацию об Уме. Точно так же поклонники Джона Траволты, скорее всего, будут привлечены к фильму из-за присутствия Джона в изображении.

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


преодолевая трудности

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

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

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

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

Наконец, существуют инженерные проблемы крупномасштабного персонализированного картографирования. Поскольку наш опыт участников является визуальным и содержит большое количество изображений, системе необходимо обрабатывать более 20 миллионов запросов с малой задержкой в ​​секунду в пиковую нагрузку. Эта система должна быть достаточно надежной, потому что пользовательский интерфейс не будет правильно отображать иллюстрацию, и пользовательский опыт значительно ухудшится. Кроме того, алгоритм персонализации также должен быстро реагировать при загрузке видео, что означает быстрое обучение персонализации в случае холодного запуска. После запуска алгоритм необходимо постоянно настраивать, так как эффект изображений может меняться со временем, жизненный цикл видео постоянно развивается, а вкусы участников постоянно меняются.


Ситуационные бандиты рекомендуют персонализированные изображения

Большинство систем рекомендаций Netflix используют алгоритмы машинного обучения. Сначала мы собираем пакет данных о том, как участники используют сервис, а затем запускаем новый алгоритм машинного обучения на этом пакете данных. Затем мы проводим A/B-тестирование этого алгоритма на существующих производственных системах. С помощью A/B-тестирования на случайных подмножествах мы узнаем, лучше ли новый алгоритм существующей производственной системы. Члены группы A представляют текущий опыт продукта, а группа B представляет опыт продукта в соответствии с новым алгоритмом. Если члены группы B будут больше вовлечены в Netflix, мы распространим этот новый алгоритм на всю базу участников. К сожалению, у этого пакетного подхода есть и свои недостатки: у многих участников уже давно не было лучшего пользовательского опыта, как показано на следующем рисунке:

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

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

Поскольку мы можем не взять наилучшее изображение, предсказанное алгоритмом контекстных бандитов, исследование данных может повлечь за собой затраты (или подводные камни). Как эта случайность влияет на опыт участников (и наши показатели)? У нас более 100 миллионов участников, и обычно недостатки исследования очень малы, распространяются на большую базу участников, и каждый участник предоставит небольшое количество отзывов для записи. Это делает стоимость исследования каждого участника незначительной, что также является важным фактором при выборе контекстных бандитов, чтобы, по крайней мере, улучшить опыт участника. Если исследование стоит дорого, то использование контекстных бандитов для рандомизации и исследования данных неуместно. Согласно нашей схеме онлайн-исследования данных, мы получаем обучающий набор данных, который записывает каждый кортеж (участник, заголовок, изображение) независимо от того, воспроизводится видео или нет. Кроме того, мы можем контролировать исследование, чтобы выбор изображения не менялся так часто, что делает взаимодействие участников с конкретным изображением более четким.


обучение модели

В онлайн-обучении мы обучаем модель контекстных бандитов выбирать наиболее подходящую картинку для каждого участника в зависимости от контекста. Обычно на видео может быть не более десятков изображений-кандидатов.Для обучения модели выбора мы упрощаем задачу, ранжируя изображения каждого члена. После упрощения мы все еще можем найти предпочтения участников в отношении видеоизображений, поскольку каждое изображение-кандидат, представленное пользователю, одна часть будет привлекать пользователя, а другая — нет. Мы можем смоделировать и предсказать эти предпочтения, и вероятность того, что участники получат качественное взаимодействие, соответственно возрастет. Такими моделями могут быть контролируемое обучение, контекстные бандиты Thompson Sampling, LinUCB или байесовские.


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

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

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


выбор изображения

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


оценка эффекта

не в сети

Перед развертыванием в сети мы можем оценить алгоритм ситуативных бандитов, используя автономный метод, называемый «воспроизведение» [1]. Этот подход позволяет нам отвечать на вопросы, не соответствующие действительности, на основе зарегистрированных данных разведки (рис. 1). Другими словами, что происходит в офлайне в разных контекстах, если мы используем разные алгоритмы в одних и тех же условиях.

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

Если мы предположим, что предоставленное изображение было выбрано новым алгоритмом, а не текущим, повтор показывает, насколько участник вовлечен в видео. На рис. 2 показано, как контекстные бандиты увеличивают средний уровень вовлеченности пользователей в запись по сравнению со случайно выбранными или неконтекстными бандитами.

(Рисунок 2. Средние оценки изображений, выбранных с помощью различных алгоритмов, на основе частоты воспроизведения в записи данных исследования изображений (чем выше, тем лучше). Случайный (зеленый) указывает на случайный выбор изображений, а простой бандитский алгоритм (желтый) выбирает изображение с наивысший балл. Алгоритм контекстных бандитов (синий и розовый) выбирает разные изображения для разных участников в зависимости от контекста.)

(Рисунок 3: Пример контекстного выбора изображения на основе профилей пользователей. Комедии относятся к профилям, которые в основном смотрят комедийные фильмы, а Романтика представляет профили пользователей, которые смотрят больше всего романтических фильмов. Алгоритм контекстных бандитов рекомендует участников с изображением известного комика Робин Уильямс и более романтическое фото целующейся пары.)

онлайн

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


в заключении

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

Источник статьи:

medium.com/Netflix - настоящим...

Ашок Чандрашекар, Фернандо Амат, Джастин Базилико и Тони Джебара

Следите за нами в WeChat"Передовая линия ИИ", ответьте "AI" в фоновом режиме, чтобы получить серию электронных книг в формате PDF "AI Frontline".