Ещё в конце XX века главной проблемой для большинства людей был поиск информации и развлекательного контента. За нужными книгами приходилось идти в библиотеку; видеокассеты, а потом и DVD с фильмами — брать в прокатах; CD с музыкой — покупать. Из 2022 года это кажется чем-то невероятным. Теперь любую информацию можно найти за два клика. В приложении из вашего смартфона — все песни мира. В онлайн-кинотеатрах — как новые фильмы, так и многое из классики кинематографа. Большинство компьютерных игр можно скачать или играть в них прямо в сети. Дефицит информации сменился дефицитом внимания. За него началась настоящая борьба. Ну а победить в ней компаниям помогают технологии искусственного интеллекта. Где и как они применяются — в новой статье из цикла об ИИ на портале Naked Science.
Рассмотрим типичную ситуацию потребления развлекательного контента со стороны пользователя и со стороны компании. Вечер трудного дня. Нужно выбрать — какое бы кино посмотреть. Конкретных предпочтений у вас нет, зато есть подписка на несколько сервисов с частично не пересекающимися библиотеками фильмов и сериалов. В каждом из них тысячи наименований. Если искать, просто последовательно листая каталоги, то весь вечер уйдет только на это, а не на просмотр кино. Что же делать бедному пользователю?
В то же время у онлайн-кинотеатра свои боли: нужно повышать конкретные метрики своего продукта: посещаемость (DAU и MAU — ежедневное и ежемесячное количество уникальных пользователей), нужно обеспечить возврат зрителей, а самое главное — их вовлеченность в демонстрируемый контент и продолжительность пользования сервисом. Все эти метрики коррелируют с вероятностью продления подписки, покупок внутри кинотеатра, перехода на премиальное обслуживание, а значит и с текущей и будущей прибылью компании и курсом ее акций на бирже. Иными словами — очень важны.
В любом цифровом сервисе, будь то онлайн-кинотеатр, интернет-магазин, маркетплейс, суперапп или социальная сеть, каждое действие пользователя записывается. В типичном онлайн-кинотеатре собираются все данные о просмотренных фильмах и сериалах, в том числе о времени суток, когда их смотрели, что смотрели до и после конкретной единицы контента, «перематывали» ли в каких-то местах фильм, а также когда и где прекращали просмотр. Кроме того, фиксируются все мелочи, связанные с интерфейсом: как долго пользователь скроллит страницу; как, когда и зачем нажимает те или кнопки; какие делает поисковые запросы и т.д., и т.п.
Таким образом собирается как индивидуальный цифровой профиль конкретного клиента, увязанный с его социально-демографическими характеристиками (гендер, примерный возраст и т.д.), так и обширный датасет, который можно использовать для машинного обучения. Ведь мы помним главную аксиому — без больших и качественных данных алгоритмы искусственного интеллекта работать не будут.
И вот благодаря ИИ теперь все в выигрыше: клиент получает персонализированные подборки фильмов, из которых за разумное время может выбрать то, что ему по душе. А компания вовлекает пользователя во всё более активное взаимодействие именно со своим онлайн-кинотеатром и максимизирует время просмотра контента в нём.
В России одним из пионеров и обладателем действительно выдающейся рекомендательной системы стала Яндекс.Музыка, появившаяся еще в 2009 году. В общем и целом все рекомендательные системы строятся на двух принципах и их разнообразных комбинациях. Первый — это рекомендации на основе содержания (content-based). Так, в Яндекс.Музыке алгоритм в первую очередь анализирует содержание самого трека и расширяет рекомендации на основе содержания, извлекая ряд характеристик из предпочитаемых слушателем элементов контента. В этом случае создается не столько профиль самого пользователя, сколько некоторые паттерны особенностей предпочитаемого им контента. Далее в библиотеке ищутся другие элементы со схожим паттерном и предлагаются слушателю. Это, кстати, позволяет искусственному интеллекту учиться дальше и все глубже подстраиваться под индивидуального подписчика, так как алгоритм постоянно анализирует важность каждой характеристики из выделенных паттернов для конкретного человека.
Кроме того, алгоритм «смотрит», какие композиции подписчик слушал ранее и по их истории дополнительно строит профиль предпочитаемых исполнителей и жанров. Добавочную информацию для уточнения прогноза дают действия пользователя: поставил ли он песне «Нравится» или «Не нравится»; сколько раз и как часто ее слушал, либо, наоборот, пропускал; добавлял ли в плейлисты; отправлял ли ссылку кому-нибудь и т.д.
Второй принцип — построение системы рекомендаций на основе коллаборативной фильтрации (collaborative filtering). Ключевым моментом здесь становится расширение рекомендаций за счёт истории оценок других пользователей. Если в предыдущем подходе алгоритм создавал сложный граф с кластерами мелодий по жанру, исполнителю, разнообразным характеристикам композиций, то в данном случае граф состоит из профилей пользователей.
Например, 20 человек объединяются в единый кластер по предпочтению песен группы «Кино», из них 10 формируют подкластер, часто слушающих ещё Nautilus Pompilius, далее у пяти в предпочтениях ещё группа «Алиса», а других пяти «Чайф». Из этого можно сделать вывод, что некий другой пользователь, обожающий «Кино» и Nautilus Pompilius, вероятно, поклонник русского рока, но при этом вряд ли любитель группы «Аквариум», зато почти наверняка «Алисы» или «Чайфа», композиции которых ему и будут рекомендованы.
ИИ-алгоритмы постоянно сравнивают профили всех пользователей музыкальных сервисов. В результате выявляются люди со схожими музыкальными предпочтениями в общем, но разными пристрастиями в деталях. Это дает возможность для новых рекомендаций, ведь что уже нравится одному, может понравиться и другому.
А вот история онлайн-кинотеатров началась со знаменитого стримингового сервиса Netflix, стартовавшего в 1997 году как стартап по прокату VHS-кассет и DVD с фильмами. Сегодня это технологический гигант с 220 миллионами подписчиков, ежемесячно оплачивающих недешёвый онлайн-доступ к кино и сериалам. Однако самое главное даже не количество подписчиков. В 2020 году (разгар пандемии и локаутов) каждый пользователь Netflix в среднем просматривал с помощью этого сервиса 3,2 часа видеоконтента ежедневно. Или совокупно на всех — фантастические 6 115 200 000 часов в месяц.
При этом в сутках у каждого человека всего 24 часа. Предположим, 8 из них занимает сон, ещё 9 — работа. На домашние дела, досуг, ну и может спортивные занятия или самообразование остаётся в лучшем случае 7 часов. А ведь могут быть ещё жены, мужья, дети, престарелые родители, домашние животные и т.д., которые все требуют заботы и внимания. И вот в этом узком отрезке Netflix научился получать почти 50% всего свободного времени своих пользователей, конкурируя, в том числе, с YouTube, Spotify, соцсетями, видеоиграми, традиционными и цифровыми СМИ, кабельным телевидением, подкастами, книгами и пр.
Можно возразить, что мы здесь не учитываем выходные дни и праздники. Но если так, то доля видеостриминга в будние дни хоть и падает, но зато с лихвой компенсируется тем, что по-английски называют binge-watching, а по-русски запойным просмотром по многу часов подряд в уикэнд. И не в последнюю очередь этому помогают рекомендательные системы, построенные с использованием технологий искусственного интеллекта.
Вслед за Netflix систему персональных рекомендаций имплементировали и другие крупнейшие мировые игроки на рынке стримингового видео: Hulu, Amazon Prime, HBO Max, Disney+. А в России — «Иви», «Кинопоиск HD», принадлежащий Яндексу, и Okko.
Первый рекомендательный алгоритм получил название CineMatch и довольно долго с успехом предсказывал пользователям Netflix фильмы, которые могли бы понравиться подписчикам. В то время у сервиса была система оценки в пять звёзд. В 75% случаев прогнозы CineMatch оказывались точны в пределах плюс или минус половины звезды. При этом до 50% пользователей Netflix, взявших напрокат рекомендованные CineMatch кассеты и DVD c фильмами, оценили их в пять звёзд
В 2006-м — за год до того как компания запустила стриминговую платформу — было организовано соревнование Netflix Prize. В открытый доступ выложили датасет, состоявший из около 100 миллионов записей: ID анонимных пользователей плюс их оценки от одной до пяти звёзд тем или иным фильмам. Задачей участников конкурса было разработать алгоритм, который сможет превзойти точность прогноза CineMatch на 10%.
Качество предсказания измерялось при помощи метрики Root Mean Squared Error (RMSE). Она сообщает квадратный корень из средней квадратичной разницы между прогнозируемыми моделью значениями оценок и фактическими значениями в реальном наборе данных. Иными словами, чем ниже RMSE, тем лучше модель соответствует набору данных, а значит её предсказание оценки пользователем того или иного фильма на основе истории его предыдущих оценок будет ближе к реальности.
У алгоритма CineMatch на тот момент RMSE равнялся 0,9514. Команде, которая бы добилась показателя хотя бы в 0,8563, был обещан миллион долларов. Турнир продлился почти три года. За первый год многим участникам удалось добиться прогресса в 7%, но дальше дело не задалось. Потребовалось еще два года, чтобы получить решение, поэтому тем удивительнее, что команда-победитель BellKor’s Pragmatic Chaos опередила занявшую второе место The Ensemble всего на 24 минуты! При этом RMSE у них совпадал до четвёртого знака.
Победители в своей модели использовали комбинацию из матричной факторизации c использованием сингулярного разложения (SVD-алгоритм) и ограниченных машин Больцмана (особого типа нейронных сетей). Ведь если совсем упрощенно, то ID пользователей и их оценки — это матрица из множества чисел. Факторизация есть её разложение на простые составляющие.
Например, если заменить зрителей на товары в магазине, а их оценки на стоимость, то у нас, условно, будут три шоколадки и два бублика со значениями 30 рублей и 10 рублей. Элементарным примером факторизации будет деление значения на количество и получение цены — одна шоколадка стоит 10 рублей, а бублик 5. Естественно, когда вместо товаров миллионы пользователей, а их оценок ещё на порядки больше, разложение гораздо сложнее, а компонент очень много.
Выявив же все скрытые факторы, теперь можно подать их на вход нейронной сети — ограниченной машины Больцмана. Обучив её, разработчики смогут получить необходимый прогноз для каждого конкретного пользователя.
Большой проблемой рекомендательных систем остаётся неопределённость: во многих случаях у них нет полных данных ни о характеристиках контента, ни о предпочтениях подписчика. Однако искусственному интеллектувсё равно необходимо как-то оценить вероятность того, что рекомендованный фильм или песня понравится пользователю.
Здесь на помощь приходит байесовский подход. Он позволяет за счёт теоремы Байеса постоянно актуализировать достоверность гипотезы при поступлении новых сведений. Например, новый подписчик посмотрел пару боевиков, а потом к нему в гости приехала девушка и вместе они посмотрели две мелодрамы (но рекомендательный алгоритм об этом не знает!). Логично, что с вероятностью 50% пользователю надо предлагать боевики и мелодрамы, однако если он потом вновь предпочтет какой-нибудь «Рейд 2» или «Джон Уик 3», то мелодрамы окажутся случайной флуктуацией. И тогда, оценив влияние новых событий, модель снова изменит выдачу рекомендованных фильмов или песен.
Байесовский подход — очень действенный метод. Благодаря его использованию можно выявить лучшие гипотезы, основываясь на наборе случайных, сильно зашумленных данных. Иными словами, он позволяет осуществлять машинное обучение даже в условиях недостаточного или некачественного датасета. При этом байесовский подход можно эффективно комбинировать с различными нейронными сетями.
И все же, несмотря на всемогущество рекомендательных алгоритмов, вовлечению пользователя в потребление медиаконтента мешают многие традиционные барьеры — например, языковой. Если в сфере музыки он не столь критичен, то вот для фильмов оказывается решающим. Поэтому тот же Netflix или российская «Амедиатека» активно нанимали студии озвучки и дубляжа. Зарубежному гиганту для своих громких премьер приходилось рекрутировать до 30 команд в разных странах мира. Это очень дорого и в случае рядового контента, а не блокбастеров, с трудом окупается.
Единственный выход — субтитры. Однако если их созданием займутся переводчики-люди, то на стандартную библиотеку контента одного онлайн-кинотеатра их потребуется целая армия, но даже и в этом случае полное обеспечение качественными субтитрами займёт годы. Поэтому разумно переложить эту задачу на искусственный интеллект.
Системы обработки естественного языка (Natural Language Processing, NLP), использующие новейшие многоязычные модели, вроде способной понимать 46 языков BLOOM, или же mGPT-3 13B от Сбера, которая может работать с 61 языком, включая такие экзотические как йоруба, бурятский или телугу, легко сгенерируют гигабайты субтитров. Схема здесь простая — один алгоритм переводит аудио в текст (speech–to–text), а другие автоматически делают перевод.
Но самое главное, в чем всегда состоит огромная трудность — это синхронизация субтитров с движениями губ актеров и ведущих в фильмах и шоу. Даже незначительная задержка в представлении субтитров может привести к тому, что они окажутся рассинхронизированными со звуком и мимикой. Так происходит из-за разной средней длины слов и предложений, например, в английском, русском и финском языках.
И вот тут искусственный интеллект также окажет существенную помощь — за счет подбора слов и фраз, максимально близких по смыслу, но укладывающихся в прокрустово ложе реплик на экране. Впрочем, как и в большинстве других задач, финальное слово в деле создания субтитров за человеком. Профессиональный редактор должен вычитать и проверить готовый продукт от ИИ, исправив возможные ошибки или несостыковки.
В завершение хочется сказать — и с искренней гордостью, — что российские онлайн-кинотеатры и технологические компании, например, уже упомянутый «Кинопоиск HD», предлагают своим пользователям за счет искусственного интеллекта серьезно расширить и дополнить зрительский опыт. Благодаря технологии DeepDive можно поставить фильм на паузу, распознать лицо в кадре и узнать, как зовут актёра. Сначала DeepDive работал только в веб-версии и приложениях для Smart TV. А с 2021 года его можно использовать и на смартфонах с iOS и Android.
Также в конце 2021 года в «Кинопоиск HD» появилась еще более интересное нововведение — «Музыка в кадре». Нажав на соответствующую кнопку, можно не только узнать название мелодии и ее автора, но и сразу найти соответствующую композицию и добавить в свой плейлист. А это, конечно же, повлияет и на систему рекомендаций.
Можно предположить, что в дальнейшем от таких относительно простых (в плане результата, но не алгоритмов под капотом) систем «дополненного контента», мы дойдем до того, что ИИ будет распознавать скрытые аллюзии в кадре (например, на картины известных мастеров в творчестве Стэнли Кубрика), киноцитаты, а также давать контекстные справки об истории и культуре реальных мест или о вымышленных мирах. В чем-то это будет напоминать книгофильмы из Вселенной «Дюны» и, с одной стороны, может изменить практику линейного просмотра фильмов, а с другой дополнить ее и преобразовать, улучшив понимание происходящего на экране.
Впрочем, что касается линейного просмотра, то здесь уже совершил переворот Netflix, выпустив интерактивный эпизод «Брандашмыг» сериала «Черное зеркало». В нем пользователь может управлять развитием сюжета и концовкой фильма, выбирая тот или иной поворот в отдельных эпизодах. Получилось своеобразное сочетание кино и квеста, интересное скорее как разовый эксперимент. И хотя пока ИИ к этому отношения не имеет, но, вполне возможно, в будущем интерактивное кино скорее будет напоминать игры, где зритель окажется протагонистом в истории, а противостоящие ему антагонисты станут управляться ИИ. В общем — парк «Мир Дикого Запада», но только на экране в уютной квартире или в шлеме виртуальной реальности внутри камеры симуляции физического окружения.
Комментарии
Интересный материал.