Stable Diffusion начала синтезировать музыку
В рамках проекта Riffusion разработчики развивают вариант системы машинного обучения Stable Diffusion для генерации музыки вместо изображений. Мелодии можно создавать как на основе предложенного шаблона, так и с помощью текстового описания на естественном языке.
Компоненты для синтеза музыки написали на языке Python с использованием фреймворка PyTorch. Связь с интерфейсом реализовали на языке TypeScript. Компоненты доступны под лицензией MIT.
Сама модель открыта под лицензией Creative ML OpenRAIL-M, допускающей использование в коммерческих целях.
Обновлённая модель использует для генерации музыки модели «из текста в изображение» и «из изображения в изображение», но в качестве изображений выступают спектрограммы. Они отражают изменение частоты и амплитуды звуковой волны во времени. Система на выходе формирует новую спектрограмму, которая затем преобразуется в звуковое представление.
Проект Riffusion также может использовать для изменения имеющихся композиций и синтеза музыки по образцу. Этот процесс работает по аналогии с модификацией изображений в Stable Diffusion. Так, при генерации могут задаваться образцы спектрограмм с эталонным стилем, комбинироваться разные стили, выполняться плавный переход от одного стиля к другому или вноситься изменения в существующий звук для увеличения громкости отдельных инструментов, изменение ритма и т.д.
Образцы можно использовать для генерации длительно играющих композиций, создаваемых из серии близких друг к другу отрывков, немного меняющихся во времени. Они объединяются в непрерывный поток при помощи интерполяции внутренних параметров модели.
Для создания спектрограммы используется оконное преобразование Фурье. Чтобы решить проблему с определением фазы, задействован алгоритм аппроксимации Гриффина-Лима.
В ноябре Stability AI сообщила о выпуске новой версии модели Stable Diffusion 2.0. В ней улучшили качество и повысили вариативность получаемых изображений.
Отличный комментарий!