Охота на электроовец. Большая книга искусственного интеллекта
Шрифт:
В 2017 г. уже знакомые нам Алексей Тихонов и Иван Ямщиков использовали вариационный рекуррентный автокодировщик для генерации музыки в стиле знаменитого русского композитора Александра Скрябина. Создание музыкальных композиций в стиле Скрябина было приурочено ко дню 175-летия композитора. Треки, сгенерированные нейросетью, свела вместе Мария Чернова, композитор и эксперт по творчеству Скрябина. 30 мая 2017 г., на открытии конференции YaC 2017, получившееся произведение исполнил камерный оркестр в составе скрипки, арфы и терменвокса, на котором играл Пётр Термен — правнук создателя этого музыкального инструмента Льва Термена [2962] , [2963] , [2964] .
2962
Нейросеть Яндекса создала музыку в стиле Скрябина (2017) / Викиновости, 30 мая 2017 // https://ru.wikinews.org/wiki/Нейросеть_Яндекса_создала_музыку_в_стиле_Скрябина
2963
Камерный оркестр исполнил музыку, написанную нейросетью «Яндекса» под Скрябина (2017) / Meduza, 30 мая 2017 // https://meduza.io/shapito/2017/05/30/kamernyy-orkestr-ispolnil-muzyku-napisannuyu-neyrosetyu-yandeksa-pod-skryabina
2964
Yamshchikov I. P., Tikhonov A. (2018). I Feel You: What makes algorithmic experience personal? / EVA Copenhagen 2018, Politics of the Machines — Art and After, Aalborg University, Copenhagen, Denmark, 15—17 May 2018 // https://doi.org/10.14236/ewic/EVAC18.32
С подробным описанием модели, лежавшей в основе этого эксперимента, можно ознакомиться в статье «Генерация музыки при помощи вариационного рекуррентного автокодировщика, поддержанного историей» (Music generation with variational recurrent autoencoder supported by history) [2965] , опубликованной в 2017 г. Модель, предложенная Тихоновым и Ямщиковым, как можно догадаться из названия их статьи, получила название VRASH. Это довольно любопытная архитектура, построенная на основе парадигмы «кодировщик — декодер». При этом в основе моделей кодировщика и декодера лежит четырёхслойная рекуррентная сеть-хайвей. В отличие от классического вариационного автокодировщика VRASH использует предыдущие выходы в качестве дополнительных входов. Таким образом, можно сказать, VRASH «слушает» ноты, которые сгенерировал, и использует их как дополнительный «исторический» вход.
2965
Yamshchikov I. P., Tikhonov A. (2017). Music generation with variational recurrent autoencoder supported by history // https://arxiv.org/abs/1705.05458
В начале 2019 г. модель, созданная Тихоновым и Ямщиковым, стала соавтором композитора Кузьмы Бодрова при создании пьесы для альта с оркестром. «Я получил около двадцати с чем-то файлов от нейросети [компании] Яндекс, — говорит композитор. — Это были мелодические линии, изложенные на фортепиано. Как ни странно, в них были интересные зёрна, за которые цепляется слух. Но они были не оформлены. Это шло единым бессмысленным потоком, как бывает речь у нездоровых людей. Хотя возникали иногда ритмические образования в этом потоке. Я взял оттуда несколько таких тем и немножко отшлифовал их. Затем продолжил более осознанное выстраивание формы, сделал оркестровку и вывел партию солирующего альта. Получилось такое произведение». Даже нейросеть, которая неспособна в промышленных объёмах производить музыкальные шедевры, может генерировать музыкальный материал, помогающий авторам в поисках идей. Бодров говорит об этом так: «Композиторы, когда начинают сочинять, обычно сталкиваются с проблемой: за что зацепиться, за какую ниточку дёрнуть, чтобы найти мелодический оборот, либо аккорд, либо тембр. И это найденное начинает, как бы, обрастать. В этом поиске всегда состоит трудность. А в этом случае было легче. Эти зёрна уже были заданы. Я получил кирпичики, из которых начал строить здание. Это можно назвать соавторством, потому что мелодические линии были предложены не мной, а нейронной сетью» [2966] .
2966
Ализар А. (2019). Нейросеть «Яндекса» стала соавтором пьесы для альта с оркестром / Хабр, 22 февраля // https://habr.com/ru/post/441286/
Среди отечественных исследований, посвящённых генерации музыки при помощи нейросетевых моделей, следует отметить также выпускную квалификационную работу Сергея Иванова, выполненную им на факультете вычислительной математики и кибернетики МГУ под руководством профессора Дьяконова [2967] . Предлагаемая автором модель, обученная на подборке произведений с сайта classicalarchives.com, основана на комбинации LSTM-сети, оснащённой механизмом внимания, с RBM-сетью (ограниченной машиной Больцмана). Эта модель показала неплохой результат на соревнованиях по созданию музыки при помощи ИИ [AI-generated Music Challenge], организованных в 2017 г. на платформе crowdAI Федеральной политехнической школой Лозанны (Ecole Polytechnique Federale de Lausanne) [2968] . К сожалению, оценка сгенерированной музыки в ходе соревнований была основана только на автоматизированной метрике.
2967
Иванов С. М. (2018). Нейросетевая Генерация Музыки. Выпускная квалификационная работа. Московский государственный университет имени М.В. Ломоносова. Факультет вычислительной математики и кибернетики. Кафедра математических методов прогнозирования // http://www.machinelearning.ru/wiki/images/2/2c/2018_417_IvanovSM.pdf
2968
AI-generated music challenge // https://www.crowdai.org/challenges/ai-generated-music-challenge
Вполне закономерным результатом второй революции в обработке естественного языка было появление музыкальных генеративных моделей, основанных на трансформерах. Первой такой моделью стало новое творение Magenta (кстати говоря, среди ведущих исследователей этой лаборатории — уже знакомый нам пионер нейросетевой генеративной музыки Дуглас Экк), модель под незатейливым названием «Музыкальный трансформер» (Music Transformer) [2969] . Авторы использовали датасет классической фортепианной музыки под названием Piano-e-Competition, содержащий около 1100 музыкальных произведений [2970] . В ходе эксперимента по оценке качества музыкальных произведений создатели музыкального трансформера использовали по десять мелодий, созданных двумя версиями модели (с двумя разными типами механизма внимания — с абсолютным и относительным способом кодирования позиции токена), десять мелодий, созданных моделью на основе LSTM, и десять мелодий, написанных людьми. В эксперименте участвовало, к сожалению, всего три оценщика, в итоге было осуществлено 160 попарных сравнений с использованием шкалы Ликерта, включающей пять возможных значений оценки степени согласия с некоторым утверждением (в данном случае с утверждением, что композиция A является более мелодичной [musical], чем композиция B): полностью не согласен, не согласен, где-то посередине, согласен, полностью согласен. В итоге лучшей из двух версий трансформера удалось победить LSTM (52 победы в сравнениях против 39), с небольшим отставанием от музыки, сочинённой людьми (61 победа в сравнениях). Согласно подсчётам авторов (включавших среди прочего поправку на множественную проверку гипотез, что является признаком весьма качественного статистического исследования; такая проверка позволяет учесть возможность того, что статистически значимый результат был получен случайно — лишь потому, что исследователи перебрали очень много гипотез), превосходство трансформерной модели с относительным кодированием позиции токена над моделью с абсолютным кодированием позиции токена оказалось статистически значимым, однако статистически значимое превосходство над LSTM ей показать не удалось, что неудивительно при таких скромных объёмах выборки. Конечно, в исследованиях, претендующих на уровень SOTA, хотелось бы видеть эксперименты с большим количеством оценщиков.
2969
Huang C.-Z. A., Vaswani A., Uszkoreit J., Shazeer N., Simon I., Hawthorne C., Dai A. M., Hoffman M. D., Dinculescu M., Eck D. (2018). Music Transformer // https://arxiv.org/abs/1809.04281
2970
Piano-e-Competition dataset (competition history): http://www.piano-e-competition.com/
В начале 2020 г. на свет появился Pop Music Transformer, описанный в статье Ю-Сян Хуана и И-Сюань Яна под названием «Трансформер для поп-музыки: моделирование на основе тактовых долей [beat-based] и создание выразительных поп-композиций для фортепиано» (Pop Music Transformer: Beat-based Modeling and Generation of Expressive Pop Piano Compositions) [2971] .
Основой данного музыкального трансформера стала популярная модель для моделирования естественного языка под названием Transformer-XL. В качестве обучающего датасета был использован набор из 775 фортепианных композиций. Изюминкой модели стало новое представление музыкальных данных, получившее название REMI (REvamped MIdi-derived events, Скорректированные события, полученные из MIDI-представления). MIDI (Musical Instrument Digital Interface, Цифровой интерфейс музыкальных инструментов) — стандартный формат для обмена данными между электронными музыкальными инструментами. Музыка в формате MIDI представлена в виде последовательности событий [events], которыми могут быть нажатия клавиш, выбор тембра, темпа, тональности и так далее.
2971
Huang Y.-S., Yang Y.-H. (2020). Pop Music Transformer: Beat-based Modeling and Generation of Expressive Pop Piano Compositions // https://arxiv.org/abs/2002.00212
Основная идея REMI заключается в том, чтобы в явном виде добавить в представление информацию о начале каждого такта и его долей. Получив на вход информацию о временной сетке произведения в явном виде, трансформер, как оказалось, способен обучаться гораздо эффективнее. К сожалению, в ходе эксперимента по оценке качества музыки авторы исследования сравнивали свои результаты только с результатами различных вариантов обычного музыкального трансформера (который им весьма убедительно удалось превзойти).
В целом наиболее продвинутой, основанной на трансформерах генеративной моделью для музыки является MuseNet от OpenAI. Её архитектура основана на тех же принципах, что и текстовые генеративные модели GPT-2 и GPT-3 (в MuseNet, как и в GPT-3, используются блоки разреженного трансформера). Длина контекста 72-слойной модели составляет 4096 токенов. По примерным прикидкам, в MuseNet должно быть около 2–3 млрд весов.
Для обучения модели был создан огромный датасет MIDI-файлов, в который вошли коллекции classicalarchives.com и bitmidi.com, датасет MAESTRO [2972] , а также ряд тематических и этнических сборников MIDI-музыки, собранных авторами в интернете. Этот датасет был затем дополнительно аугментирован путём небольших изменений темпа. Также в модель был включён специальный механизм, предназначенный для снижения вероятности прямого плагиата, когда модель просто воспроизводит достаточно длинные фрагменты, представленные в обучающей выборке. К сожалению, хотя MuseNet и можно воспользоваться онлайн, информация о самой модели в настоящее время ограничивается лишь популярным постом [2973] в блоге OpenAI, то есть препринт исследования не был опубликован. Будем надеяться, что OpenAI рано или поздно поделится с сообществом деталями своих экспериментов.
2972
Hawthorne C., Stasyuk A., Roberts A., Simon I., Huang C.-Z. A., Dieleman S., Elsen E., Engel J., Eck D. (2019). Enabling Factorized Piano Music Modeling and Generation with the MAESTRO Dataset / In International Conference on Learning Representations // https://openreview.net/forum?id=r1lYRjC9F7
2973
Payne C. M. (2019). MuseNet / OpenAI blog, April 25, 2019 // https://openai.com/blog/musenet/
В целом генеративные музыкальные модели, работающие на уровне нотного текста, стали в наши дни помощниками композиторов, а иногда способны и на создание вполне самостоятельных произведений на уровне лучших композиторов. В 2019 г. впервые в истории был подписан контракт между крупным музыкальным лейблом (Warner Music) и компанией, создавшей систему для алгоритмической генерации музыки — Endel [2974] .
Семейство генеративных музыкальных моделей SymFormer, работающих в нотном домене, создано у нас в Управлении экспериментальных систем машинного обучения департамента SberDevices «Сбера» командой под руководством Алексея Минина [2975] , [2976] . С творчеством этих нейросетей можно познакомиться в сервисе «Звук», где оно размещается от имени нейросетевого ансамбля Aiphoria [2977] .
2974
Deahl D. (2019). Warner music signed an algorithm to a record deal — what happens next? / The Verge, Mar 27, 2019 // https://www.theverge.com/2019/3/27/18283084/warner-music-algorithm-signed-ambient-music-endel
2975
Минин А. (2022). Маэстро: как виртуальные ассистенты Салют превращают текст в музыку / Хабр, 23 декабря 2022 // https://habr.com/ru/companies/sberdevices/articles/707138/
2976
Минин А. (2021). SymFormer: как мы написали музыку с помощью трансформеров и вариационных автоэнкодеров / Хабр, 25 ноября 2021 // https://habr.com/ru/companies/sberdevices/articles/591441/
2977
Aiphoria (2024) // https://zvuk.com/artist/211304339
Концерт, где генеративная нейросеть впервые в мире стала солистом и импровизатором, состоялся в рамках культурной программы Восточного экономического форума (ВЭФ) в сентябре 2023 г. Это выступление стало результатом нашей совместной работы с известным российским музыкантом и композитором Петром Дрангой [2978] .
Но нельзя ли добиться столь же впечатляющих результатов, работая с акустическими данными? В конце концов, мы же упоминали, что модель WaveNet, обученная на записях фортепианных концертов, способна на самостоятельную импровизацию? Почему бы не избавиться раз и навсегда от всех этих библиотек инструментов и математически точного исполнения нот, лишённого индивидуального стиля исполнителя? Быть может, удастся замахнуться и на большее? Быть может, такая модель сможет заодно воспроизводить и человеческое пение — чем голос не музыкальный инструмент, пусть и сложный? Так или иначе, всё многообразие звуков, составляющих в сумме музыку, сводится к колебаниям среды, которые можно описать в виде наборов чисел. С вычислительной точки зрения это, на первый взгляд, звучит совершенно фантастически. Однако в мире нашлись исследователи, которых это не испугало. Речь идёт о создателях модели Jukebox. В конце апреля 2020 г. в блоге компании OpenAI появилась статья [2979] , описывающая доселе невиданную модель. Статья содержала ссылку на препринт исследования под названием «Jukebox: генеративная модель для музыки» (Jukebox: A Generative Model for Music) [2980] , а также популярное объяснение принципов работы модели и примеры сгенерированных музыкальных произведений.
2978
ИИ впервые в мире солировал на концерте ВЭФ во Владивостоке // https://ria.ru/20230910/kontsert-1895341104.html
2979
Dhariwal P., Jun H., Payne C. M., Kim J. W., Radford A., Sutskever I. (2020). Jukebox / OpenAI blog, April 30, 2020 // https://openai.com/blog/jukebox/
2980
Dhariwal P., Jun H., Payne C., Kim J. W., Radford A., Sutskever I. (2020). Jukebox: A Generative Model for Music // https://arxiv.org/abs/2005.00341
Jukebox получает на вход информацию о жанре, исполнителе, а также текст песни и генерирует на их основе готовое музыкальное произведение. Можно сказать, что Jukebox самостоятельно сочиняет и исполняет музыкальное произведение с заданным текстом в стиле заданного исполнителя. Выглядит как магия, не правда ли?
Типичная песня продолжительностью четыре минуты в CD-качестве (44 кГц, 16 бит) представляет собой последовательность из более чем 10 млн элементов. Современные модели на основе трансформеров способны «видеть» контекст длиною всего в несколько тысяч элементов. Этого совершенно недостаточно для того, чтобы «постичь» высокоуровневую музыкальную семантику. Одним из наиболее популярных инструментов глубокого обучения, предназначенных для борьбы с «проклятием размерности», являются автокодировщики. Автокодировщик может сжать оригинальный звук в пространство меньшей размерности, отбрасывая некоторые несущественные для восприятия части информации. Затем можно обучить модель генерировать звук в этом сжатом пространстве, а затем «развернуть» полученное латентное представление в исходное звуковое пространство при помощи декодера. В Jukebox роль автокодировщика выполняет усовершенствованная версия модели VQ-VAE. При этом используется сразу три уровня кодирования, которые сжимают исходный звук в 8, 32 и 128 раз соответственно. В зависимости от степени сжатия восстановленный звук становится всё более и более шумным, но даже сжатый в 128 раз сигнал сохраняет информацию о высоте тона, тембре и громкости звука.