Успех киноиндустрии основывается на способности студии привлечь зрителей – но это проще сказать, чем сделать. Зрители – группа разношёрстная, у них бывают совершенно разные интересы и предпочтения. Исторически киностудии сильно полагались на свой опыт, принимая решение о финансировании определённого сценария – однако это приводит к большим рискам, особенно, когда речь идёт о новых оригинальных историях. И вот Джулия Ригер, президент, главный стратег по данным и глава медиадепартамента, совместно с Мигелем Кампо-Рембадо, старшим вице-президентом по науке о данных, и их команда учёных из 20th Century Fox, решили прояснить этот пошаговый и сложный процесс сопоставления историй с аудиторией при помощи точных данных.
Сложная задача по обработке данных, подходящая для машинного обучения
Понимание сегментации рынка зрительской аудитории – ключевая функция киностудий. С годами они вкладывались в высокоуровневую обработку данных, пытаясь разметить сегменты клиентов и сделать предсказания для будущих фильмов. Однако по сию пору детальны предсказания на уровне сегмента, не говоря уже об уровне пользователя, остаются недоступными из-за технологических и принципиальных препятствий.
Мигель с командой смогли избавиться от некоторых из этих препятствий, работая с такими партнёрами, как Google Cloud. Совместно мы создали партнёрский проект, который, с большим уважением к приватности, использует данные для лучшего понимания предпочтений кинозрителей, и разработали собственные модели глубинного обучения, тренирующиеся на подробных данных и киносценариях для определения базовых закономерностей в предпочтениях аудитории для каждого типа фильмов. В течение 18 месяцев эти модели стали привычным инструментом для принятия бизнес-решений и обеспечили один из наиболее объективных, построенных на данных и эффективных барометров, оценивающих тональность фильма, его близость к целевой и более широкой аудиториям, и его потенциальные финансовые показатели.
Давайте поговорим об этих методах подробнее. Когда речь идёт о фильмах, анализ текста сценария – метод весьма ограниченный, ведь он обеспечивает лишь костяк истории, без дополнительной динамики, способной соблазнить аудиторию на просмотр. Команде стало интересно, существует ли способ использовать современное передовое компьютерное зрение для изучения трейлеров к фильмам, как центрального элемента маркетинговой компании. Выпуск трейлера к новому фильму – явление ожидаемое, способное предсказать будущий успех, поэтому бизнесу необходимо сделать так, чтобы трейлер затронул нужные нотки у кинозрителей. Для достижения данной цели команда из 20th Century Fox скооперировалась с лабораторией передовых решений Google для создания Merlin Video, инструмента, использующего компьютерное зрение, чтобы на основе компактного представления трейлера к фильму предсказать будущую аудиторию этого фильма.
Разработка конвейера данных
Первым шагом команды стало определение технологии, которая станет основой этого инструмента. Очевидным вариантом была Cloud Machine Learning Engine (Cloud ML Engine), работающая совместно с платформой глубинного обучения (ГО) TensorFlow. Cloud ML Engine, как управляемая услуга, автоматизирует выделение ресурсов и отслеживание процесса, поэтому команда может сконцентрироваться на создании модели ГО для Merlin вместо того, чтобы заниматься настройкой инфраструктуры. Её интеграция с Cloud Dataflow также позволяет автоматически создавать отчёты в Data Studio, что дало команде возможность лучше понять работу процесса. Ежедневное обслуживание системы (в основном состоящее из переработки данных) организуется легко и просто, силами специалистов по данным, и не требует вмешательства инженеров других подразделений.
Блок-схема архитектуры Merlin
Организовав правильную инфраструктуру, команда начала работать с анализом на публично доступном наборе видео, YouTube 8M. В набор входит предварительно обученная модель от Google, способная анализировать такие особенности видео, как цвет, освещение, типы лиц, тысячи объектов и несколько ландшафтов. Как видно на картинке, первый шаг архитектуры Merlin – извлечь эти заранее заданные характеристики, которые выступят основой для определения того, какие элементы трейлера лучше всего предсказывают предпочтения зрителей.
К примеру, если человек до сих пор по большей части смотрел фильмы, где главную роль отдали мужчине, то велика ли вероятность того, что он посмотрит ещё один фильм с мужской главной ролью? Давайте поближе познакомимся с фильмом "Логан", боевиком, выпущенным компанией 20th Century Fox, в котором Хью Джекман исполняет роль Росомахи. Ниже представлен кадр с 12-й секунды официального трейлера:
Для данного кадра Merlin выдает следующие метки: растительность на лице, борода, кадр, подбородок, человек, фильм. Проанализировав весь трейлер целиком, Merlin выдал самые релевантные метки для него:
10 меток, отсортированных по убыванию частоты:
дерево
растительность на лице
машина
человек
средство передвижения
атмосфера
млекопитающее
борода
лес
свет
После назначения анализа меток «Логана» команда из 20th Century Fox захотела сравнить новый анализ со списками меток, созданными на основе других трейлеров к фильмам, чтобы найти сходные фильмы. Есть предположение, что аудитория, которая будет смотреть «Логан», частично перекрывается с аудиториями других боевиков, однако данная задача имеет два аспекта. Первая трудность – временное расположение меток в трейлере: имеет значение, когда метки появляются в трейлере. Вторая – высокая размерность данных. Для любого фильма в трейлере может присутствовать множество элементов, предсказывающих интерес аудитории, и Merlin пытается анализировать всех их одновременно. Эластичность Cloud ML Engine позволяет команде быстро проходить итерации и проводить проверки, не нарушая целостность ГО-модели. Это помогло подготовить Merlin к продакшену в течение нескольких дней, вместо месяцев или лет.
Конвейер анализа скармливает эти отдельные компоненты (метки) в специальную нейросеть, разработанную специалистами по работе с данными. Модель узнаёт временную последовательность меток в трейлере. Временная последовательность (к примеру, объект в кадре может находиться долго, или появляться в промежуточных кадрах ненамного) может передавать информацию о типе фильма, его сюжете, ролях главных персонажей и кинематографических выборах создателей фильма. Скомбинировав эти данные с историческими данными по клиентам, анализ последовательностей можно использовать для создания предсказаний поведения пользователей. В конвейер также входят основанная на расстоянии модель «совместного фильтрования» [collaborative filtering, CF] и слой логической регрессии, комбинирующий вместе все выходные данные модели и выдающий вероятность посещения фильма. Модель тренируется комплексно [end-to-end], а потеря логистической регрессии распространяется назад по всем тренируемым компонентам (весам). Конвейер данных Merlin обновляется раз в неделю, чтобы учесть выходы новых трейлеров. Структура конвейера показана на следующем изображении:
В качестве последнего шага команда использует BigQuery и BigQueryML для объединения миллионов клиентских предсказаний Merlin с другими источниками данных и создания полезных отчётов, а также быстрого прототипирования медиа-планов для маркетинговых компаний.
Проверка работоспособности модели
Давайте вернёмся к нашему примеру с трейлером к фильму «Логан», чтобы узнать, подтверждают ли данные нашу догадку о том, что зрители, которые раньше видели боевик с «потрёпанным» главным персонажем, скорее всего пойдут смотреть и «Логана». После выхода фильма мы смогли обработать данные по тому, какие фильмы смотрела наша аудитория. В таблице показано 20 реальных аудиторий кинозрителей (слева) и их сравнение с 20 предсказанными аудиториями (справа). Сконцентрируемся на пяти фильмах, которые смотрели люди (отмечены зелёным), и посмотрим, появляются ли они в колонке предсказаний: да, все пять были предсказаны.
С первого взгляда интуиция нас не подвела. Самые вероятные прогнозы для «Логана» составляли комбинацию супергеройского фильма и «потрёпанного главного мужского персонажа». Последнее предсказание также присутствует в списке топ-20 реальных аудиторий, в таких фильмах, как «Великолепная семёрка», «Джон Уик» и «Терминатор Генезис». Этот результат получается выигрышным для всех, поскольку новая аудитория добавляется к основной аудитории супергероев, и потенциально её можно использовать для расширения аудитории фильма за пределы основной.
Эти инструменты очень сильно влияют на работу команд 20th Century Fox по маркетингу и данным. Вместо того, чтобы полагаться на результаты опросов ключевой аудитории, команда теперь может использовать более точные инструменты для определения намерений клиентов. Их результаты по меньшей мере на два порядка более детальные, чем предыдущие наборы аналитических данных, на которые полагалась студия. 20th Century Fox использует этот инструмент с момента выхода «Величайшего шоумена» в 2017-м, и продолжает его использовать для всех новых релизов. Они теперь включают в подборку данных и информацию по покупкам и прокату фильмов, чтобы определить корреляцию между зрителями и теми фильмами, которые они смотрят.
Наконец, благодаря увеличению детализации данных, команда может сравнивать реальные сборы с предсказаниями, чтобы посмотреть, какие предсказания по уровню сегментирования оказались верными. Команда обработки данных под руководством Мигеля теперь создаёт учётные карточки утром каждого понедельника, и отправляет их по емейл остальным сотрудникам.
Учётные карточки для «Величайшего шоумена» (слева) и «С любовью, Саймон» (справа)
Если вам интересно подробнее узнать об исследованиях, способствовавших созданию системы Merlin, смотрите оригинальную исследовательскую работу.