Поделись наушником своим: как устроены рекомендации Spotify
#musicology #knowhow
Стриминг имеет две принципиально важные черты потребления: массовизация легальной покупки музыки и культура рекомендации. Нельзя сказать, что рекомендации — это идея исключительно стримингового сервиса Spotify. До этого идею рекомендации развивали и другие компании — Spotify просто удачно скомпилировала известные инструменты в систему и постоянно ее улучшает.
Рекомендательные инструменты Spotify
1. Пользователь «оценивает» пользователя
Первый метод по созданию рекомендаций — коллаборативная фильтрация (Collaborative Filtering). Про этот инструмент мы подробно рассказывали в другой нашей статье. Впервые его внедрили на Last.fm, а популяризировал Netflix. У этого американского сервиса видеостриминга метод строится на основе оценок, которые зрители ставят сериалам, фильмам и шоу.
У Spotify оценок нет — поэтому там рекомендации работают на основе косвенного фидбека — можно сказать, что пользователи оставляют оценки в виде метаданных: количество прослушиваний, лайк или пропуск трека (до тридцатой секунды), посещение страницы артиста, прослушивание альбома с песней и т. д.
На основе анализа метаданных высчитывается оценка, которая вкладывается в отдельную ячейку матрицы: по горизонтали — оценки одного из 286 миллионов пользователей (по данным на июль 2020 года), по вертикали — оценки одного трека (более 50 миллионов по заявлениям компании). Получается, что Spotify хранит 14,3 квадриллиона оценок!
Затем система высчитывает векторы пользователя и векторы отдельных треков. Чем ближе вектор трека к вектору пользователя, тем больше вероятность, что этот трек ему порекомендуют.
2. Нейросеть оценивает музыку
Второй метод аналитики — анализ самой музыки. Нейросеть оценивает энергичность треков, присутствие вокала, темп, тональность и так далее. Это позволяет создавать кластеры, которые примеряются на пользователя в комплексе.
Такой анализ важен при рассмотрении треков, которые невозможно оценить другими методами. Например, так анализируют треки начинающих исполнителей, которые слушают крайне мало людей, и еще меньше людей о них пишут.
В данном случае используется сверточная нейронная сеть. Ее задача — сжать объект, не потеряв при этом отношения между его элементами. В таком случае мы можем выявить не просто отношения между отдельно взятыми элементами, но и какую-либо общую тенденцию.
3. Нейросеть оценивает текст песни
Третий метод — анализ текста медиа. На серверах собираются тексты о музыкальных композициях, которые представлены на платформе. Затем с помощью инструментов NLP нейросеть анализирует, какими словами описывают те или иные песни в медиа. Полученные данные агрегируются, после чего вырабатывается система своеобразных тегов. Это не теги/хэштеги в привычном для нас twitter-понимании — «хэштег привязан к событию» —, а скорее бирки — «тег привязан к характеристике».
Например, музыку польской группы Behemoth блоггеры и музыкальные критики никогда в жизни не назовут милой группой — скорее там будут превалировать характеристики вроде «черный», «тяжелый», «эпатажный», «сатанинский» и т. д. Поэтому поляков не порекомендуют любителям Кэти Перри.
Хоумскрин с ИИ
Домашний экран вашего Spotify — это искусственный интеллект «Bandits for Recommendations as Treatments» (BaRT). Он работает на основе полок: одна полка — одна тематика. BaRT — хороший личный ассистент в подборе музыки, если вы долго слушаете музыку на одной полке. Также оценивается и продолжительность прослушивания одного трека. Меньше тридцати секунд не считается, после тридцатой, каждая новая идет треку «в актив», композиции наподобие этой будут чаще появляться в вашем плейлисте.
Алгоритм Spotify защищен от разового прослушивания — если вы включите «Happy Birthday to You» или один раз послушали «шум дождя» перед сном — это не повлияет на ваши рекомендации.
А о системе сбора и хранения данных Spotify — читайте в нашей статье: https://sysblok.ru/musicology/podelis-naushnikom-svoim-eshhe-raz-o-tom-kak-ustroeny-rekomendacii-spotify/
Артур Хисматулин
#musicology #knowhow
Стриминг имеет две принципиально важные черты потребления: массовизация легальной покупки музыки и культура рекомендации. Нельзя сказать, что рекомендации — это идея исключительно стримингового сервиса Spotify. До этого идею рекомендации развивали и другие компании — Spotify просто удачно скомпилировала известные инструменты в систему и постоянно ее улучшает.
Рекомендательные инструменты Spotify
1. Пользователь «оценивает» пользователя
Первый метод по созданию рекомендаций — коллаборативная фильтрация (Collaborative Filtering). Про этот инструмент мы подробно рассказывали в другой нашей статье. Впервые его внедрили на Last.fm, а популяризировал Netflix. У этого американского сервиса видеостриминга метод строится на основе оценок, которые зрители ставят сериалам, фильмам и шоу.
У Spotify оценок нет — поэтому там рекомендации работают на основе косвенного фидбека — можно сказать, что пользователи оставляют оценки в виде метаданных: количество прослушиваний, лайк или пропуск трека (до тридцатой секунды), посещение страницы артиста, прослушивание альбома с песней и т. д.
На основе анализа метаданных высчитывается оценка, которая вкладывается в отдельную ячейку матрицы: по горизонтали — оценки одного из 286 миллионов пользователей (по данным на июль 2020 года), по вертикали — оценки одного трека (более 50 миллионов по заявлениям компании). Получается, что Spotify хранит 14,3 квадриллиона оценок!
Затем система высчитывает векторы пользователя и векторы отдельных треков. Чем ближе вектор трека к вектору пользователя, тем больше вероятность, что этот трек ему порекомендуют.
2. Нейросеть оценивает музыку
Второй метод аналитики — анализ самой музыки. Нейросеть оценивает энергичность треков, присутствие вокала, темп, тональность и так далее. Это позволяет создавать кластеры, которые примеряются на пользователя в комплексе.
Такой анализ важен при рассмотрении треков, которые невозможно оценить другими методами. Например, так анализируют треки начинающих исполнителей, которые слушают крайне мало людей, и еще меньше людей о них пишут.
В данном случае используется сверточная нейронная сеть. Ее задача — сжать объект, не потеряв при этом отношения между его элементами. В таком случае мы можем выявить не просто отношения между отдельно взятыми элементами, но и какую-либо общую тенденцию.
3. Нейросеть оценивает текст песни
Третий метод — анализ текста медиа. На серверах собираются тексты о музыкальных композициях, которые представлены на платформе. Затем с помощью инструментов NLP нейросеть анализирует, какими словами описывают те или иные песни в медиа. Полученные данные агрегируются, после чего вырабатывается система своеобразных тегов. Это не теги/хэштеги в привычном для нас twitter-понимании — «хэштег привязан к событию» —, а скорее бирки — «тег привязан к характеристике».
Например, музыку польской группы Behemoth блоггеры и музыкальные критики никогда в жизни не назовут милой группой — скорее там будут превалировать характеристики вроде «черный», «тяжелый», «эпатажный», «сатанинский» и т. д. Поэтому поляков не порекомендуют любителям Кэти Перри.
Хоумскрин с ИИ
Домашний экран вашего Spotify — это искусственный интеллект «Bandits for Recommendations as Treatments» (BaRT). Он работает на основе полок: одна полка — одна тематика. BaRT — хороший личный ассистент в подборе музыки, если вы долго слушаете музыку на одной полке. Также оценивается и продолжительность прослушивания одного трека. Меньше тридцати секунд не считается, после тридцатой, каждая новая идет треку «в актив», композиции наподобие этой будут чаще появляться в вашем плейлисте.
Алгоритм Spotify защищен от разового прослушивания — если вы включите «Happy Birthday to You» или один раз послушали «шум дождя» перед сном — это не повлияет на ваши рекомендации.
А о системе сбора и хранения данных Spotify — читайте в нашей статье: https://sysblok.ru/musicology/podelis-naushnikom-svoim-eshhe-raz-o-tom-kak-ustroeny-rekomendacii-spotify/
Артур Хисматулин