• Сведение треков при помощи генеративных нейронных сетей

    svedenie trekov neironnye seti

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

    Но иногда возникают сложности. Так плэйлист, состоящий из треков в жанрах техно, электро и IDM, отражающий настроение или эмоции — не просто набор треков в стиле техно, который намного проще свести.

    Недавние работы в области глубокого обучения обнаружили методы решения проблемы плавного перехода между треками. Tijn Borghuis и коллеги предлагают генеративный подход для создания ритмического шаблона (барабанного бита), который нужен для непрерывного перехода между треками.

    Архитектура сети

    Метод основан на глубоком обучении и использует вариационные автоэнкодеры (Variational Autoencoder — VAE) и интерполяцию в неизвестную область. Представление музыкальных данных, архитектура сети, а также способ интерполяции и сам метод описаны ниже.

    Для использования метода авторы создали датасет ритмических рисунков трёх популярных электронных направлений: электро-фанк, техно и интеллектуальной танцевальной музыки (IDM), который содержит 1–1.5 часа записи для каждого из жанров. Датасет состоит из 1782 ритмических рисунков. Каждый шаблон представлен как двумерный массив, ось Y которого содержит 6 ударных инструментов, а ось X — время. Размер массива — 6х64 элемента, так как все рисунки имеют длину 64.

    Drum patterns in the EDM dataset
    Десять образцов ритмических шаблонов в датасете. Инструменты сверху вниз: 1) Большой барабан 2) Малый барабан. 3) Закрытый хай-хэт 4) Открытый хай-хэт. 5) Удар по ободу барабана. 6) Колокольчик. Цвет пикселей соответствует громкости MIDI сигнала. Верхняя строка: Электро-Фанк; Две средних строки: интеллектуальная танцевальная музыка; Две нижних: Техно.

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

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

    Encoding-decoding
    Схема процедуры кодирования/декодирования для создания плавного перехода между шаблонами

    Вариационный автоэнкодер, описанный в статье, состоит из трёх частей: входного слоя, рекуррентных слоёв — двунаправленных LSTM слоёв с нелинейностью гиперболического тангенса, и полностью соединённых слоёв, которые переводят входные данные в скрытое пространство — вектор из 4-х элементов. В свою очередь, декодер состоит только из полностью соединённых слоёв, выдающих структуру того же размера (6х64). За слоями декодера следует ReLU нелинейная активация.

    Encoder Network
    Структура энкодера

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

    С целью понять, насколько оригинальны генерируемые шаблоны, авторы провели интересный эксперимент, выполнив Анализ Главных Компонентов (Principal Component Analysis — PCA) тренировочных и генерируемых шаблонов посредством интерполяции.

    Decoder Network
    Структура декодера

    Авторы визуализировали оба типа шаблонов в пространстве первых двух главных компонент (которые хранят большое количество деталей).

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

    Plot of the patterns in the 2D space
    График представления шаблонов в пространстве первых двух главных компонент

    В сухом остатке

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

    Генерируемые шаблоны оригинальны и звучат гармонично. Поэтому, учитывая скорость развития искусственного интеллекта, можно ожидать, что в ближайшем будущем мы будем иметь возможность создавать музыку без участия человека вообще, и при этом не однообразную, как “роботы Spotify”.

    Перевел Борис Румянцев, оригинал — Dane Mitriev

     

    Оставить комментарий

    * Обязательные поля