Автоматическая генерация плейлистов. Презентация...
TRANSCRIPT
Автоматическая генерация плейлистов
Наталья Старикова
Руководитель: Василий Ершов
22 декабря 2016
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 1 / 13
О проекте, github
Стартоваякомпозиция
Коллекция
Пользователь
Признаки Кластеризация
Похожиекомпозиции
Плейлист
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 2 / 13
Аналоги
АналогиРекомендательные системы: Last.fm, Spotify
Эксперты: Pandora, AllMusic
Нейронные сети, обученные на плейлистах поисполнителям: word2vec on Spotify playlists
Анализ аудио-характеристик:SOM-enhanced JukeBox
Объединение идейНейронные сети, обученные на плейлистах попризнакам композиций
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 3 / 13
Результаты прошлого этапа
Сбор данных для небольшого числа песен
теги Last.fm и Echonest
тексты песен
Предварительный анализ данныхпересечение тегов
похожесть текстов (word2vec)
Генерация плейлистаСкрипт для составления плейлиста на основепредварительного анализа
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 4 / 13
Задача на данном этапе
Сбор большого количества данных:плейлистов и признаков композиций
Отбор признаков: анализ тегов Last.fm
Обучение алгоритма
Генерация плейлиста
Оценка качества
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 5 / 13
Разнообразие API, musicmachinery
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 6 / 13
Сбор данных
ПлейлистыDeezer: доступны, но требуют коррекции
Spotify: лучше качество, хуже доступность
Признаки
Last.fm : теги исполнителя и композиции, похожиекомпозиции и исполнители
Spotify : аудио-характеристики: key, mode, valence,
acousticness, danceability, liveness, instrumentalness,
speechiness, tempo, loudness, energy, time signature
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 7 / 13
Теги Last.fm
ПроблемыНа 160К композиций 360К тегов, при этом:73 тега у хотя бы 5% композиций,351 тег у хотя бы 1% композиций
Различные варианты написания
Незначимые теги
Анализ теговпопулярность
совместнаявстречаемость
здравый смысл
Тегидекада: 20s, 30s, ...90s, 00s, 10s
пол вокалиста
жанрНаталья Старикова Автогенерация плейлистов 22 декабря 2016 8 / 13
Отобранные теги Last.fm (Wordclouds)
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 9 / 13
Модели
word2vec для исполнителейПлейлисты Deezer: 72K плейлистов, 208K песенПлейлисты Spotify: 9K плейлистов, 106K песенОколо 30K исполнителей в каждом множестве
Кластеризация k-means
Композиции, выданные по методу tag.getTopTracksдля отобранных в тегах жанров
Оценка качестваСходство на основе близости жанров
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 10 / 13
Результаты
word2vec на плейлистах deezerКачество плохое и хуже с увеличением окна.
word2vec на плейлистах spotifyКачество выше и становится лучше с увеличениемокна. Максимум 7 из 8 исполнителей в том же жанре.
k-means для аудиохарактеристик Spotify1-2 композиции в одном жанре
k-means для тегов Last.fm2-4 композиции в одном жанре
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 11 / 13
Трудности, новые технологии
ТрудностиОграничения API
Отсутствие тегов
Названия композиций
Скорость Python
Библиотекиfileinput
spotipy
tensorflow
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 12 / 13
Перспективы
Построение вероятностной модели связикомпозиций с предыдущими в плейлисте
Изучение связи направленности плейлиста ипризнаков композиций
Анализ характеристик аудио
Проверка плейлистов для обучения на качество
Использование большего количества плейлистов
Гибкая конфигурация составления плейлистов
Автоматическая аннотация
Использование текстов
Наталья Старикова Автогенерация плейлистов 22 декабря 2016 13 / 13