Котенок, который умеет лаять, и рекомендательные системы

Мы сталкиваемся с рекомендательными системами практически повсюду — от стриминговых платформ до онлайн-магазинов. И что самое удивительное они часто рекомендуют то, что нам действительно подходит. Одну из таких систем разработали ученые из лаборатории исследований искусственного интеллекта T-Bank AI Research. На ее примере мы рассмотрим, как работают рекомендательные системы, и расскажем причем здесь котенок, который умеет лаять.
Котенок, который умеет лаять, и рекомендательные системы
Обучение рекомендательной системы. https://www.montecitovets.com/

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

Когда человек удивляется? Психологи показали, что удивление возникает на тонкой полосе между старым, привычным и новым, неизвестным. Привычное — удивления не вызывает (чему тут удивляться?), как и неизвестное (зачем мне это знать?). Но так бывает не со всяким «неизвестным».

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

Причем же тут рекомендательные системы? А дело в том, что они стараются работать на той же самой полосе между привычным и неизвестным. Они стараются нам показать фильм, который мы не видели, но далеко не любой, а именно тот, который близок к нашим вкусам и предпочтениям. Если рекомендательная платформа работает хорошо, у нее это получается часто (не всегда, конечно). Вот о том, почему у рекомендательной системы это получается, мы дальше и поговорим

Холодный старт

Эволюция персонализации Netflix — от предсказания рейтинга до генерации страниц и создания индивидуального пользовательского опыта. Примерно такой путь проделали все крупные стриминговые платформы.
Эволюция персонализации Netflix — от предсказания рейтинга до генерации страниц и создания индивидуального пользовательского опыта. Примерно такой путь проделали все крупные стриминговые платформы.
Netflix
РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ
РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

Но все эти «реалистичные предположения» вообще-то работают плохо. Люди — разные, фильмы им нравятся разные. Даже одному и тому же человеку могут быть интересны совсем разные фильмы. И особо удивить, системы, основанные на «реалистических предположениях», как правило, не могут.

Например, если человек в 80% случаев смотрит навороченный артхаус, а в 20% — крутые боевики, это не значит, что боевики ему не надо предлагать. Мало ли какое сейчас у него настроение. Нельзя предлагать человека фильмы одного типа, даже если он их явно предпочитает, иначе предложение будет уходить в одну все более узкую полосу и сведется паре фильмов, которые он почему-то любит пересматривать. Это крах рекомендательной системы. Человек про эти фильмы и так знает и помнит и именно их-то ему рекомендовать и нет никакого смысла. Система увязает в привычном и ничего нового открыть не может.

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ
РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

Классическая рекомендательная система

В 2012 году вышла статья, которая уже стала классической (BPR: Bayesian Personalized Ranking from Implicit Feedback). В этой статье был предложен рекомендательный алгоритм, который был потом многократно реализован.

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ
Слева показаны наблюдаемые данные S. u — пользователи, i — элементы. Подход создает конкретные предпочтения пользователя ui для пары i > j. Справа плюс ( + ) указывает на то, что пользователь отдает предпочтение элементу i, а не элементу j; минус ( — ) указывает на то, что он предпочитает j, а не i.
Слева показаны наблюдаемые данные S. u — пользователи, i — элементы. Подход создает конкретные предпочтения пользователя ui для пары i > j. Справа плюс ( + ) указывает на то, что пользователь отдает предпочтение элементу i, а не элементу j; минус ( — ) указывает на то, что он предпочитает j, а не i.
https://arxiv.org/abs/1205.2618

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

Главное чего добивается рекомендательная система, она может ранжировать те элементы, которые пользователь никогда не видел. В латентном пространстве похожие элементы оказываются рядом. Поэтому для непросмотренных элементов (например, фильмов) модель может предсказать, насколько они понравятся пользователю. Система основывается на расположении элемента относительно вектора предпочтений пользователя: чем элемент ближе к вектору, тем выше вероятность, что он подойдет. Вот это и есть, та самая полоса «удивительного» с разговора о которой мы начали.

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

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

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

Незабытое старое

Ученые из T-Bank AI Research посмотрели, что сегодня происходит на рынке рекомендательных систем и перечитали классику. И сделали так, как хотели создатели BPR, по постарались выжать из их идей максимум.

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

Ученые сосредоточились на подборе и уточнении гиперпараметров: размерность латентного пространства, число эпох обучения и его скорость и т.д. Ученые провели более 15 000 экспериментов с различными комбинациями гиперпараметров модели, чтобы найти наиболее эффективный вариант алгоритма. В общей сложности исследователи потратили более 200 000 GPU-часов на проведение экспериментов.

РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

Новая разработка обходит алгоритм Mult-VAE, опубликованный разработчиками из Netflix: рекомендации, сделанные новым алгоритмом, оказались на 10% точнее, чем предложения Mult-VAE. (В некоторых случаях улучшенная версия превосходила другие модели почти на 50% по точности).

На графике изображены результаты воспроизведения оригинального алгоритма в сравнении с моделями из разных опенсорс-фреймворков. Как видно из графика, модель, собранная исследователями Т-Банка, превосходит модели из большинства опенсорс-фреймворков.
На графике изображены результаты воспроизведения оригинального алгоритма в сравнении с моделями из разных опенсорс-фреймворков. Как видно из графика, модель, собранная исследователями Т-Банка, превосходит модели из большинства опенсорс-фреймворков.
T-Bank AI Research.
РЕКЛАМА – ПРОДОЛЖЕНИЕ НИЖЕ

Если рекомендательной системе удастся вас по-настоящему удивить, она расширит ваш кругозор и немного расскажет вам о вас самих. Вы вдруг поймете, что любите не только рэп, но и джаз, не только Ридли Скотта, но и Тарковского. И это может стать настоящим открытием. Но, чтобы удивить, нужно многое уметь. И рекомендательные системы постоянно совершенствуют свое умение удивлять, не меньше, чем лающий котенок.