Остались вопросы?
Напишите нам
Telegram
WhatsApp

Как работают алгоритмы
музыкальных сервисов?

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

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

Далее о каждом методе отдельно.
1

Анализ пользовательской информации

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

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

Коллаборативная фильтрация

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

Например, если Пользователь 1 слушает песни Taylor Swift, а также песни Ed Sheeran, и Пользователь 2 тоже слушает этих исполнителей, но еще добавляет в плейлист песни Арианы Гранде, то есть высокая вероятность, что Пользователю 2 тоже понравятся песни Арианы Гранде.
3

Рекомендации на основе содержания

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

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

Как работает алгоритм Яндекс Музыки?

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

Базовый рекомендательный движок Яндекс Музыки реализован через функцию «Моя волна», которая появилась на главной странице сервиса несколько лет назад. Эта функция предлагает сбалансированный поток, комбинируя любимые и привычные треки с новыми композициями в комфортной пропорции. Обычно алгоритм соблюдает пропорции 1/1, предлагая и новые, и привычные слушателю треки. Это позволяет алгоритму дополнительно обучаться и адаптироваться.

Функцию «Моя волна» можно дополнительно настраивать. Нажав кнопку под плеером, вы попадаете в меню настроек, где можно изменить различные параметры потока. Эти параметры включают:

  • Занятия (например, работа, спорт)
  • Характер (например, любимое, популярное, неизвестное)
  • Настроение (например, энергичное, спокойное)
  • Языки (например, русский, английский)
Перемножив все возможные варианты настроек, получается около 180 различных комбинаций. Это означает, что внутри одной Моей волны существует множество различных подалгоритмов, способных адаптироваться под конкретные предпочтения пользователя.

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

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

1. Анализ поведения пользователя

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

2. Анализ контента

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

3. Коллаборативная фильтрация

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

4. CatBoost

Все три типа фильтрации объединяются в алгоритм машинного обучения под названием CatBoost, который генерирует для каждого пользователя персонализированную последовательность треков с учётом множества факторов. Эта технология применяется практически во всех сервисах Яндекса, связанных с рекомендательными системами.
5

Заключение

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

Обо всех новостях и новых фишках мы ежедневно рассказываем в нашем Telegram-канале о музыкальном маркетинге — подписывайся, чтобы быть в курсе!