Институт музыкальных инициативМосква+7 (967) 051–87–65
logo
@imi_liveИнститут музыкальных инициатив
журналhttps://cdn-yc-static.i-m-i.ru/store/uploads/article/485/image/article-1ee598a2b8e50d159ee99c2d5bedb439.gifИлья Гарькуша2021-11-23T16:40Как устроены рекомендации «Яндекс.Музыки»
Как устроены рекомендации «Яндекс.Музыки»
Источник: «Яндекс.Музыка»

Как устроены рекомендации «Яндекс.Музыки»

Источник: «Яндекс.Музыка»

Стриминговые сервисы стремятся предугадать предпочтения своих пользователей и наиболее точно попасть в их музыкальный вкус. Для этого на каждой платформе есть умные плейлисты и другие функции, которые подбирают музыку с помощью алгоритмов. «ИМИ.Журнал» поговорил с командой рекомендаций «Яндекс.Музыки», чтобы понять, как стриминг анализирует данные о слушателях, почему лайки — не главное, кто такие холодные пользователи и в чем особенность новой потоковой функции «Моя волна».


Общий алгоритм

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

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

Основные сигналы

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

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

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

Главная страница «Яндекс.Музыки» с интерфейсом «Моей волны». Источник: music.yandex.ru

«Моя волна» стала следующим этапом настройки этого баланса: помимо нового интерфейса, облегчающего навигацию по платформе, изменился алгоритм рекомендаций. Команда сделала больший упор на незнакомых пользователю исполнителей. Обычно для большего разнообразия в ленте правила для рекомендаций подбираются вручную, но в «Моей волне» релизы фильтруются с помощью специального алгоритма.

Еще одно нововведение «Яндекс.Музыки» — измененная нейронная модель рекомендаций, использующаяся в «Моей волне». Она пытается предсказать взаимодействие пользователя с треком: например, анализируя слушательский опыт, модель предугадывает вероятность того, что человек дослушает песню до конца.

Холодные пользователи и треки

Любая платформа сталкивается с холодными пользователями — новыми слушателями, о которых стриминг еще ничего не знает. «В первую очередь такую аудиторию мы просим пройти „Визард“ — интерфейс, в котором человек может указать нескольких понравившихся артистов и любимые жанры. Так мы получаем первичные сигналы и уже можем что-то предложить. Бывают, к сожалению, пользователи, пропускающие первичную настройку. Тогда мы знаем о них совсем немного», — рассказал руководитель службы разработки рекомендаций «Яндекс.Музыки» Александр Сафронов. В таких случаях рекомендации поначалу предлагают пользователям самую популярную музыку в стране и мировые хиты

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

Холодными бывают не только пользователи, но и треки. С этой проблемой сервисы справляются несколькими способами. «Допустим, Земфира выпустила новый альбом и его еще не успел послушать ни один пользователь сервиса. Даже с нулевым количеством прослушиваний мы понимаем довольно много. В первую очередь мы знаем артиста и можем распространить всю информацию о нем и на новый релиз. Ясно, что возможен небольшой стилистический дрейф, но вообще свежий материал редко оказывается чем-то кардинально иным. Получается, что мы можем выдвигать довольно плодотворные гипотезы, основываясь на предыдущих знаниях об исполнителе», — пояснил Сафронов. Помимо уже собранных данных об исполнителе, алгоритм анализирует звучание композиции и примерно понимает, есть ли в ней голос или определенный темп: «Если в треке есть оперный вокал, вряд ли имеет смысл ставить его в ленту людям, которые не любят оперу или академическую музыку», — добавил он.   

«Счастье пользователя»

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

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

Обучение алгоритма

В большинстве продуктов «Яндекс» использует A/В-тестирование: разные формулы для рекомендаций тестируются одновременно на нескольких группах пользователей, а команда сервиса анализирует, в какой из них больше прослушиваний, скипов, лайков и других сигналов. «Победивший вариант алгоритма появляется у всех пользователей, а потом цикл запускается заново: новый эксперимент, отбор и внедрение. Так команда старается шаг за шагом улучшать рекомендации», — поделился Александр Сафронов.

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

Пиратский контент и накрутки

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

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