Перейти к содержанию

6.6.11 Машина как композитор

Материал из Охота на электроовец: Большая Книга Искусственного Интеллекта

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

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

Синтез нотного текста — задача, сильно напоминающая задачу синтеза текста на естественном языке. Неудивительно, что история алгоритмической музыкальной композиции весьма напоминает историю развития систем для генерации текстов. Первые алгоритмы генерации музыки, так же как и алгоритмы для порождения текстов, появились задолго до первых ЭВМ.

Идея использования формальных методов в музыкальной композиции была известна уже в эпоху Античности. Например, Пифагор верил в связь между законами природы и гармонией звуков, выраженной в музыке[1]. Само слово «музыка» имело для древних греков более широкое значение, чем в наши дни. В учении пифагорейцев музыка была неотделима от чисел, которые считались ключом ко всей духовной и физической вселенной. Система музыкальных звуков и ритмов, упорядоченная при помощи чисел, олицетворяла гармонию космоса[2].

О связи математики и музыки рассуждали также Птолемей и Платон[3]. Птолемей, «самый систематический из древних теоретиков музыки» по мнению признанных специалистов в области музыковедения Клода Палиски и Дональда Граута, был среди прочего ведущим астрономом своего времени. Он считал, что математические законы «лежат в основе систем как музыкальных интервалов, так и расстояний между небесными телами» и что определённые лады и даже ноты «соответствуют определённым планетам, их расстояниям друг от друга и их движениям». У Платона эта идея приобрела поэтическую форму в мифе о «музыке сфер», неслыханной музыке, «созданной вращениями планет». Позже к этой идее обращались многие умы Средневековья и эпохи Возрождения, включая Шекспира и Мильтона[4].

Впрочем, эти рассуждения имели, по всей видимости, лишь теоретический характер. Хотя они повлияли на появление различных видов музыкального строя и, следовательно, в определённой мере на практику музыкальной композиции, речи о замене композитора алгоритмом в то время не шло. Следующий шаг в направлении алгоритмической генерации музыки был сделан с рождением «канонической» композиции в конце XV в.[5] Принятый тогда метод заключался в том, чтобы сочинить одну голосовую партию и дать указания певцам создать на её основе производные, дополнительные партии. Правила, по которым создавались эти партии, назывались «каноном», что в переводе с латыни означает «правило» или «закон». Например, второму голосу может быть дано указание спеть ту же мелодию с запаздыванием на определённое количество тактов относительно первого голоса или с определённым алгоритмическим преобразованием нотной последовательности. Скажем, партия второго голоса может быть обращением[6] исходной партии[7].

Следующий смелый шаг вперёд сделал не абы кто, а сам Моцарт, который явил миру свою полушутливую «музыкальную игру в кости» [Musikalisches Würfelspiel]. Эта игра была основана на сочинении нескольких небольших музыкальных фрагментов с их последующим случайным соединением. Эта примитивная форма алгоритмической композиции доверяет творческие решения воле случая, позволяя игральным костям выбирать используемые ноты[8]. Таким образом, вопреки расхожему стереотипу, гармонию в некотором смысле поверил алгеброй вовсе не «злой и бездарный» Сальери, а его одарённый антагонист. Так что, возможно, мировой литературе нужна новая интерпретация старой истории, в которой жертвой становится как раз тот, что посмел вмешаться в творческую сферу при помощи богомерзкой математики. Впрочем, Лем со своим «Электрувером Трурля», как уже не раз бывало, обогнал зазевавшихся драматургов.

Существуют и более современные примеры автоматизированной композиции, не предполагающей использования компьютера. Например, американский композитор Джон Кейдж, как и Моцарт, использовал случайность при создании многих своих композиций. 5 марта 1968 г. Кейдж организовал перформанс под названием «Воссоединение» (Reunion). В ходе него участники играли в шахматы на доске, оборудованной 64 фоторезисторами. При передвижении шахматных фигур фоторезисторы подавали сигналы, в результате чего в громкоговорителях, размещённых среди слушателей, звучали фрагменты электронной и электроакустической музыки.

В другом своём произведении, «Эклиптический атлас» (Atlas Eclipticalis, 1961), Кейдж делегировал процесс композиции природным явлениям — музыка создавалась путём наложения нотных листов поверх астрономических карт и размещения нот в точках, в которых располагались звёзды. Таким образом Кейдж воплотил в жизнь идею «музыки сфер». Элементы случайности были положены в основу и более ранних композиций Кейджа. Например, фортепианное соло «Музыка перемен» (Music of Changes), написанное Кейджем для его друга, пианиста Дэвида Тюдора, в 1951 г., было основано на гадательных практиках китайской «Книги перемен» (易經, «И цзин»). В том же году была создана композиция «Воображаемый ландшафт № 4» (Imaginary Landscape No. 4), написанная для 24 исполнителей на 12 радиоприёмниках и базировавшаяся на непредсказуемости того, что именно будет звучать в тот или иной момент в программе вещания. Кейдж был мастером музыкального эпатажа — в конце концов самым известным его творением стала композиция «4'33» 1952 г., чуть более чем полностью состоящая из тишины[9], [10], [11]. В наши дни он вместе с Карлхайнцем Штокхаузеном и Пьером Булезом считается одним из пионеров «алеаторики» (слово alea на латыни обозначает игральную кость) — течения в музыкальной композиции, представители которого отдают отдельные элементы музыкального произведения на волю случая.

Противоположными алеаторике направлениями в музыке традиционно считаются двенадцатитоновый метод (додекафония) и сериализм. Но и они удивительным образом в конечном счёте также являются способами, позволяющими уменьшить роль человека в процессе музыкальной композиции. Ведь они стремятся к тому, чтобы сделать процесс сочинения максимально объективным и регламентированным, то есть подчинить его определённым алгоритмам. Выбор нот или ритма в них часто зависит от заранее составленных «серий» и «матриц», которые по сути автоматизируют процесс создания музыкального произведения, вытесняя из него человеческий произвол. Например, фортепианный этюд «Лад длительностей и интенсивностей» (Mode de Valeurs et D’intensités) Оливье Мессиана, написанный в 1949 г., состоит из 36 серий определённых нот, длительностей этих нот и их громкости — и ни один из элементов серии не может повториться, пока не будут сыграны все остальные[12].

Идея использовать вычислительную машину для сочинения музыки была высказана ещё Адой Лавлейс (мы упоминали об этом в разделе, посвящённом её идеям), однако до её практического воплощения пришлось ждать более ста лет. В 1955–1956 гг. Леджарен Хиллер и Леонард Исааксон из Иллинойсского университета в Урбане-Шампейне использовали для этой цели компьютер ILLIAC I. Одним из результатов их экспериментов стала «Сюита Иллиака» (Illiac Suite), созданная в 1956 г. Партитура пьесы была составлена ​​компьютером, а затем переведена в традиционную нотную запись для исполнения струнным квартетом.

Парадигма, положенная Хиллером и Исааксоном в основу созданной ими системы, предполагала использование трёх последовательных стадий: 1) генерации «исходных материалов» для музыкального произведения; 2) их модификации при помощи различных функций; 3) отбор наилучших результатов этих модификаций при помощи набора правил. Этот подход — синтез на базе правил — довольно типичен для эпохи GOFAI. Сходным образом в те годы пытались решать самые разные задачи в области обработки текстов — от машинного перевода до доказательства теорем.

Альтернативный подход в алгоритмической музыкальной композиции, получивший название «стохастического», был впервые реализован в программе Янниса Ксенакиса. Программа Ксенакиса, первая версия которой появилась на свет в 1956 г., называлась SMP (Stochastic Music Program, Стохастическая музыкальная программа). Детальное описание методов, использованных в SMP, можно найти в книге «Формализованная музыка» (Musiques formelles: nouveaux Principes formels de Composition Musicale), написанной Ксенакисом в 1963 г. Программа, основанная на стохастическом подходе, использует статистическую модель для оценки вероятностей различных вариантов продолжения музыкальной композиции (для чего используется аналог языковой модели в задачах генерации текстов на естественном языке), а затем на основе этих оценок при помощи генератора псевдослучайных чисел производится выбор конкретного продолжения. В некотором роде программу Ксенакиса можно считать наследником моцартовской «музыкальной игры в кости» с той принципиальной разницей, что варианты продолжения мелодии теперь не являются равновероятными. Как и в случае программы Хиллера и Исааксона, сочинённые партитуры предназначались для последующего исполнения людьми.

Если Хиллер и Исааксон старались в своей системе смоделировать процесс работы композитора-человека, то Ксенакис стремился скорее трансформировать саму музыку, придать её развитию новый импульс при помощи математики и вычислительных машин. Будучи по натуре новатором и бунтарём, он хотел раздвинуть тесные границы музыкальных канонов, поэтому продукты его экспериментов довольно сильно отличаются от результатов, полученных его коллегами из Иллинойса.

Идеи Ксенакиса становятся куда более понятными, если обратиться к его биографии.

Яннис Ксенакис родился в 1922 г. в городе Брэила (Румыния). Он был старшим сыном Клеархоса Ксенакиса, греческого предпринимателя из Эвбеи, и Фотинии Павлу с Лемноса. Мать ещё в раннем детстве познакомила Янниса с музыкой. Её ранняя смерть (Яннису на тот момент было всего пять лет) стала травмирующим опытом, который, по его собственным словам, «оставил глубокие шрамы» в душе будущего композитора[13]. В 1932 г. Яннис был отправлен в школу-интернат на эгейском острове Спеце, где мальчик среди прочего изучал нотную грамоту и сольфеджио, а также пел в школьном хоре[14].

В 1938 г., после окончания школы, Ксенакис переехал в Афины, чтобы подготовиться к вступительным экзаменам в Национальный технический университет Афин. Юноша планировал изучать архитектуру и инженерию, однако не оставил и музыку, занимаясь под руководством греческого композитора Аристотелиса Кундурова. В 1940 г. Ксенакис успешно сдал экзамены в университет, однако его учёба вскоре была прервана начавшейся Греко-итальянской войной. Итальянское вторжение началось 28 октября 1940 г., и хотя грекам и удалось его отразить, но после присоединения к нападению немецкой армии в апреле 1941 г. Греция капитулировала и была оккупирована державами «фашистской оси». В годы оккупации Ксенакис участвовал в вооружённом сопротивлении в составе Национально-освободительного фронта Греции (Εθνικό Απελευθερωτικό Μέτωπο, ΕΑΜ).

К концу 1943 г. греческие партизаны контролировали около половины территории страны, а к октябрю 1944 г. в результате их наступательных действий почти вся территория страны была освобождена.

После вывода оккупационных войск Черчилль приказал использовать британские войска для восстановления греческой монархии. Таким образом, греческие партизаны, ещё вчера сражавшиеся с фашистами, теперь сражались с британскими войсками. Ксенакис в составе отряда студентов-коммунистов «левой фракции имени лорда Байрона» в Народно-освободительной армии Греции (Ελληνικός Λαϊκός Απελευθερωτικός Στρατός, ΕΛΑΣ) участвовал в уличных боях с британскими танками. В ходе этих боёв он был тяжело ранен — осколок снаряда изуродовал его щёку и левый глаз, который навсегда перестал видеть.

Несмотря на все выпавшие на его долю невзгоды и перебои в работе университета, Ксенакис в 1947 г. всё же смог получить диплом специалиста в области гражданского строительства. Примерно в то же время правительство начало аресты бывших членов Сопротивления, придерживавшихся левых взглядов. Ксенакис, опасаясь за свою жизнь, был вынужден бежать из страны. В конце 1947 г. он прибыл в Париж. В одном из поздних интервью Ксенакис признался: «Годами меня мучило чувство вины за то, что я покинул страну, за которую воевал. Я оставил своих друзей — одни сидели в тюрьме, другие умерли, некоторым удалось сбежать. Я чувствовал, что я в долгу перед ними и что я должен вернуть этот долг. И я чувствовал, что у меня есть миссия. Мне нужно было сделать что-то важное, чтобы вернуть себе право на жизнь. Это был не просто вопрос музыки — это было нечто гораздо более важное». В Греции Ксенакиса заочно приговорили к смертной казни. Этот приговор был заменён на десять лет тюремного заключения в 1951 г. и отменён лишь спустя 23 года, после падения режима «чёрных полковников» в 1974 г.[15], [16]

В 1947–1959 гг. Ксенакис работал в студии архитектора Ле Корбюзье, участвовал в нескольких проектах, самый значительный из которых — павильон «Электронная поэма» фирмы Philips на Всемирной выставке 1958 г. в Брюсселе. Параллельно с работой у Корбюзье Ксенакис продолжал своё музыкальное образование. В 1948–1950 гг. он брал уроки у Артюра Онеггера и Дариюса Мийо, а в начале 1950-х прослушал курсы музыкальной эстетики и анализа музыкальных форм в Парижской консерватории в классе уже знакомого нам Оливье Мессиана. В 1955–1962 гг. Ксенакис работал в основанной Пьером Шеффером студии электронной музыки, а в 1966 г. основал в Париже Группу математики и автоматики музыки (Equipe de Mathématique et d’Automatique Musicales), ставшую с 1972 г. Центром изучения математики и автоматики музыки (Centre d’Etudes Mathématiques et Automatique Musicales).

Благодаря своим успехам Ксенакис стал одним из лидеров музыкального авангардизма второй половины XX в. В стохастических системах, созданных Ксенакисом, роль «языковой модели» выполняли различные алгоритмы. Например, для сочинения «Аналогии А/В» (Analogique A Et B, 1959) применялись марковские цепи, для «Атрея» (Atrées, 1962) — алгоритм, основанный на распределении Гаусса, для «Пифопракты» (Pithoprakta, 1956) — основанный на распределении Максвелла и так далее. Помимо музыкальных композиций, Ксенакис создавал также аудиовизуальные[17]. Если Хиллер и Исааксон стремились полностью передать творческий процесс машине, то у Ксенакиса машина обычно выступает в роли умного инструмента композитора, его алгоритмического соавтора[18].

Со времён первых экспериментов в области автоматизации музыкальной композиции было создано множество различных моделей и систем, обычно относящихся или к стохастическому подходу, или к подходу, основанному на правилах, при этом в конкретных системах эти два подхода вполне могли сочетаться. Например, стохастические модели могли использоваться для создания «исходных материалов» в системах, использующих правила. Однако в целом прогресс был достаточно скромным. По крайней мере, музыке, сочинённой машинами, не удалось завоевать ни какую-то особую массовую популярность, ни сердца музыкальных критиков. Прогресс в этом направлении наметился на заре эры глубокого обучения. Вполне ожидаемым стало то, что заметный шаг вперёд в области глубоких генеративных музыкальных моделей удалось сделать при помощи LSTM-сетей.

Надо отметить, что первые попытки использовать рекуррентные нейронные сети для генерации музыки были предприняты ещё в конце 1980-х гг. Однако музыкальные произведения, сочинённые «ванильными» (стандартными) RNN, страдали от отсутствия глобальной структуры: хотя такие сети хорошо «схватывали» краткосрочные зависимости — выучивали вероятности перехода от одной ноты к другой и даже воспроизводили небольшие музыкальные фразы, но попытки освоить крупномасштабную структуру произведений (музыкальную форму) и использовать эти долгосрочные зависимости для управления композицией оказались безуспешными. Причина этих неудач заключалась, по всей видимости, в том, что классические архитектуры RNN не были способны устанавливать связь между отдалёнными по времени событиями, составляющими глобальную музыкальную структуру. Это было типичной проблемой RNN в различных областях применения, и LSTM была архитектурой, предназначенной для компенсации именно этой слабости рекуррентных сетей.

В 2002 г. Дуглас Экк и Юрген Шмидхубер опубликовали работу под названием «Первый взгляд на музыкальную композицию с использованием рекуррентных нейронных сетей LSTM» (A First Look at Music Composition using LSTM Recurrent Neural Networks)[19]. Авторы использовали довольно простое представление музыки: каждой восьмой доле соответствовал вектор размерностью 25 (13 позиций в нём соответствовали нотам мелодии, а 12 — нотам аккорда). В каждой позиции вектора значение 1 соответствовало звучанию соответствующей ноты (0 — отсутствию звучания). Этот способ представления данных напоминает механизмы хранения мелодии, применяемые в механических пианино (пианолах). В конце XIX — начале XX в. появились пианолы, клавиши которых управлялись при помощи бумажных перфорированных лент. Отверстие в определённой позиции очередного ряда ленты соответствовало нажатию соответствующей клавиши пианолы. Поэтому представление музыки в виде последовательности векторов, состоящих из нулей и единиц, обычно так и называют — ролики для пианолы [piano roll].

В некоторых из экспериментов, произведённых авторами статьи, результирующий вектор мог преобразовываться таким образом, чтобы его среднее значение было равно нулю, а стандартное отклонение — единице. Понятно, что такое представление было крайне упрощённым (например, нельзя было использовать ноты длительностью менее ⅛ или композиции, содержащие партии нескольких инструментов), однако Экк и Шмидхубер стремились в первую очередь доказать жизнеспособность концепции. Обучающая выборка формировалась на основе набора из 4096 блюзовых композиций. Сама сеть была по нынешним меркам игрушечной — она содержала четыре LSTM-блока по две ячейки в каждом. Однако даже такая небольшая сеть смогла продемонстрировать способность «улавливать» глобальную структуру произведения.

В конце 2000-х было опубликовано ещё несколько работ, развивавших подход Экка и Шмидхубера[20], [21]. Впрочем, как случалось неоднократно с работами Шмидхубера и его учеников, их исследования несколько опередили время, поэтому до поры до времени оставались практически не замеченными другими исследователями. Взрывной рост интереса к глубоким нейронным сетям в 2010-е гг. привёл к новым, более масштабным исследованиям в области алгоритмической композиции. Двумя работами, которым удалось привлечь внимание широкой общественности, стали модели folk-RNN и Deep Bach. В основе обеих вновь лежали LSTM-сети.

Модель folk-RNN была представлена общественности в работе 2015 г. под названием «Стилистическое моделирование фолк-музыки при помощи рекуррентных нейронных сетей с блоками долгой краткосрочной памяти» (Folk Music Style Modelling by Recurrent Neural Networks with Long Short Term Memory Units)[22]. Её авторами были Боб Штурм из Центра цифровой музыки Лондонского университета королевы Марии (Queen Mary University of London, QMUL), Жоао Сантос из Национального научно-исследовательского института (Institut national de la recherche scientifique, INRS) в Канаде и Ирина Коршунова из Гентского университета (Universiteit Gent, UGent) в Бельгии.

Авторы работы использовали обучающую выборку из почти 24 000 фолк-произведений с сайта thesession.org в ABC-формате, представляющем собой специализированный язык разметки мелодий (так называемых тюнов [tunes]) в фолк-музыке. Для обозначения нот используются буквы латинского алфавита: C, D, E, F, G, A, B (до, ре, ми, фа, соль, ля, си). Кроме этого, в записи могут присутствовать различные управляющие последовательности для кодирования специальных символов (текстов песен, надстрочных знаков, акцентов и т. д.), а также информационные поля, определяющие размер, темп, тональность, название композиции и так далее.

При подготовке данных исследователи отбросили лишние поля, оставив лишь тональность, размер, основную длительность нот и сами ноты. Представление мелодии было основано на словаре, содержавшем 134 токена (каждый токен был отдельным символом или сочетанием из нескольких символов, составляющих некоторое лексическое целое). Словарю соответствовал one-hot-вектор необходимой размерности. Архитектура модели содержала три скрытых слоя по 512 блоков LSTM в каждом и выходной слой на базе softmax.

Чтобы оценить качество созданных мелодий, Штурм и его коллеги предложили группе профессиональных музыкантов, специализирующихся на традиционной ирландской музыке, создать альбом, взяв за основу произвольные мелодии из набора, включавшего как обучающую выборку, так и 100 000 алгоритмически сгенерированных мелодий. В результате появился альбом, в котором более половины музыки было создано машиной. Штурм и его коллеги опубликовали альбом в интернете, чтобы получить отзывы и комментарии профессионалов и общественности. «Нам пришлось придумать историю происхождения альбома, чтобы избежать предвзятости, которая может возникнуть, если кто-то считает, что творческий продукт был создан компьютером, — вспоминал Штурм. — И вот теперь, когда у нас есть обзоры, мы раскрываем истинное происхождение альбома»[23].

Создатели второй модели[24], DeepBach, Гаэтан Хаджерес, Франсуа Паше и Фрэнк Нильсен, сделали шаг вперёд от простой LSTM-сети. Вместо одной сети они использовали сразу четыре: LSTM-сеть, которая обрабатывала контекст слева направо, LSTM-сеть, которая обрабатывала сеть справа налево, простая нерекуррентная сеть, предназначенная для рассмотрения одновременно звучащих нот, а также сеть, объединяющая выходы предыдущих трёх сетей. Впрочем, разумеется, это разделение носит условный характер — упомянутые четыре сети можно рассматривать как единое целое, большую сеть с комплексной архитектурой.

Обучающий набор данных DeepBach состоял из 352 хоралов Баха. Исследователи аугментировали эту выборку, используя перестановки исходных хоралов под различные музыкальные ключи, и получили в результате 2503 композиции, которые были разделены в соотношении 4 : 1 между обучающей и тестовыми выборками.

Поскольку нейронная сеть в DeepBach опирается при прогнозировании не только на моменты времени, предшествующие тому, для которого строится прогноз, но и на последующие, то привычный способ генерации последовательности «слева направо» в данном случае неприменим. Вместо него создатели DeepBach использовали алгоритм под названием «псевдогиббсовское семплирование» [Pseudo-Gibbs sampling]. Его суть сводится к тому, что сначала генерируется случайная последовательность нот, которая затем улучшается последовательными шагами, в ходе которых случайно выбранные ноты последовательности заменяются на ноты, прогнозируемые моделью.

Для того чтобы оценить качество созданных моделью произведений, авторы исследования привлекли группу, состоявшую из 1272 человек с различным уровнем музыкальных знаний: 365 человек были профессиональными музыкантами или обучались музыкальной композиции, 646 идентифицировали себя как любители музыки или музыканты и, наконец, 261 при заполнении анкеты указали, что редко слушают классическую музыку. Для оценки было отобрано 400 12-секундных отрывков музыкальных композиций. 100 из них были из произведений Баха, 100 были созданы при помощи DeepBach, и ещё по 100 композиций приходилось на две более простые генеративные модели (они были основаны на полносвязных нейронных сетях — в первой из них был один скрытый слой из 500 нейронов, во второй и вовсе не было скрытого слоя). Каждого из оценщиков попросили дать ответ на вопрос в отношении некоторых отрывков (судя по графику, двенадцати, хотя в статье это не указано): является ли данный отрывок произведением Баха или же он создан компьютером? Созданные моделью DeepBach отрывки набрали в среднем около 50% голосов, в то время как настоящий Бах получил в среднем чуть больше 75%. Средние результаты полносвязных сетей были существенно скромнее — около 20% и около 40%. При этом отдельные отрывки DeepBach набрали 75% голосов и выше (хотя по иронии судьбы самый лучший из созданных компьютером отрывков оказался творением полносвязной сети со скрытым слоем — он набрал почти 90% голосов оценщиков; впрочем, это было, по всей видимости, простым статистическим артефактом).

Неплохие результаты в области алгоритмической музыкальной композиции удалось получить и с применением генеративно-состязательных сетей. В том же 2016 г. шведский исследователь Олоф Морген опубликовал работу под названием «C-RNN-GAN: непрерывные рекуррентные нейронные сети с состязательным обучением» (C-RNN-GAN: Continuous recurrent neural networks with adversarial training)[25], в которой представил на суд общественности модель под названием C-RNN-GAN, основанную на соревнующихся LSTM‑сетях. Модель, обученная на 3697 произведениях 160 композиторов, научилась генерировать весьма приличную полифоническую музыку (правда, автор исследования, в отличие от создателей DeepBach, не проводил масштабных экспериментов по оценке качества этих произведений, поэтому в данном случае это не более чем субъективная оценка).

В 2017 г. появилась интересная альтернативная модель на основе генеративных состязательных сетей — MidiNet[26]. В ней авторы использовали в качестве генератора и дискриминатора свёрточные сети (модель была создана под впечатлением от DCGAN). К сожалению, авторы этой работы тоже избежали сравнения своих результатов с музыкой, сочинённой людьми, однако в небольшом эксперименте показали превосходство своей модели над более ранней моделью — MelodyRNN, созданной специалистами исследовательской лаборатории Google под названием Magenta. Основой MelodyRNN были LSTM-сети, причём модель существовала в двух вариантах (LookbackRNN и AttentionRNN), принципиальным отличием второго было использование в нём механизма внимания[27].

В общем, во второй половине 2010-х гг. было создано немало генеративных моделей, оперирующих музыкой на уровне нот или аккордов и использующих техники, характерные для эпохи первой революции в обработке естественного языка. Помимо упомянутых выше, среди них можно отметить также Song from PI[28], MusicVAE[29], BALSTM[30], MuseGAN[31], HRNN[32], PerformanceRNN[33] и BachProp[34].

В 2017 г. уже знакомые нам Алексей Тихонов и Иван Ямщиков использовали вариационный рекуррентный автокодировщик для генерации музыки в стиле знаменитого русского композитора Александра Скрябина. Создание музыкальных композиций в стиле Скрябина было приурочено ко дню 175-летия композитора. Треки, сгенерированные нейросетью, свела вместе Мария Чернова, композитор и эксперт по творчеству Скрябина. 30 мая 2017 г., на открытии конференции YaC 2017, получившееся произведение исполнил камерный оркестр в составе скрипки, арфы и терменвокса, на котором играл Пётр Термен — правнук создателя этого музыкального инструмента Льва Термена[35], [36], [37].

С подробным описанием модели, лежавшей в основе этого эксперимента, можно ознакомиться в статье «Генерация музыки при помощи вариационного рекуррентного автокодировщика, поддержанного историей» (Music generation with variational recurrent autoencoder supported by history)[38], опубликованной в 2017 г. Модель, предложенная Тихоновым и Ямщиковым, как можно догадаться из названия их статьи, получила название VRASH. Это довольно любопытная архитектура, построенная на основе парадигмы «кодировщик — декодер». При этом в основе моделей кодировщика и декодера лежит четырёхслойная рекуррентная сеть‑хайвей. В отличие от классического вариационного автокодировщика VRASH использует предыдущие выходы в качестве дополнительных входов. Таким образом, можно сказать, VRASH «слушает» ноты, которые сгенерировал, и использует их как дополнительный «исторический» вход.

В начале 2019 г. модель, созданная Тихоновым и Ямщиковым, стала соавтором композитора Кузьмы Бодрова при создании пьесы для альта с оркестром. «Я получил около двадцати с чем-то файлов от нейросети [компании] Яндекс, — говорит композитор. — Это были мелодические линии, изложенные на фортепиано. Как ни странно, в них были интересные зёрна, за которые цепляется слух. Но они были не оформлены. Это шло единым бессмысленным потоком, как бывает речь у нездоровых людей. Хотя возникали иногда ритмические образования в этом потоке. Я взял оттуда несколько таких тем и немножко отшлифовал их. Затем продолжил более осознанное выстраивание формы, сделал оркестровку и вывел партию солирующего альта. Получилось такое произведение». Даже нейросеть, которая неспособна в промышленных объёмах производить музыкальные шедевры, может генерировать музыкальный материал, помогающий авторам в поисках идей. Бодров говорит об этом так: «Композиторы, когда начинают сочинять, обычно сталкиваются с проблемой: за что зацепиться, за какую ниточку дёрнуть, чтобы найти мелодический оборот, либо аккорд, либо тембр. И это найденное начинает, как бы, обрастать. В этом поиске всегда состоит трудность. А в этом случае было легче. Эти зёрна уже были заданы. Я получил кирпичики, из которых начал строить здание. Это можно назвать соавторством, потому что мелодические линии были предложены не мной, а нейронной сетью»[39].

Среди отечественных исследований, посвящённых генерации музыки при помощи нейросетевых моделей, следует отметить также выпускную квалификационную работу Сергея Иванова, выполненную им на факультете вычислительной математики и кибернетики МГУ под руководством профессора Дьяконова[40]. Предлагаемая автором модель, обученная на подборке произведений с сайта classicalarchives.com, основана на комбинации LSTM-сети, оснащённой механизмом внимания, с RBM-сетью (ограниченной машиной Больцмана). Эта модель показала неплохой результат на соревнованиях по созданию музыки при помощи ИИ [AI‑generated Music Challenge], организованных в 2017 г. на платформе crowdAI Федеральной политехнической школой Лозанны (École Polytechnique Fédérale de Lausanne)[41]. К сожалению, оценка сгенерированной музыки в ходе соревнований была основана только на автоматизированной метрике.

Вполне закономерным результатом второй революции в обработке естественного языка было появление музыкальных генеративных моделей, основанных на трансформерах. Первой такой моделью стало новое творение Magenta (кстати говоря, среди ведущих исследователей этой лаборатории — уже знакомый нам пионер нейросетевой генеративной музыки Дуглас Экк), модель под незатейливым названием «Музыкальный трансформер» (Music Transformer)[42]. Авторы использовали датасет классической фортепианной музыки под названием Piano-e-Competition, содержащий около 1100 музыкальных произведений[43]. В ходе эксперимента по оценке качества музыкальных произведений создатели музыкального трансформера использовали по десять мелодий, созданных двумя версиями модели (с двумя разными типами механизма внимания — с абсолютным и относительным способом кодирования позиции токена), десять мелодий, созданных моделью на основе LSTM, и десять мелодий, написанных людьми. В эксперименте участвовало, к сожалению, всего три оценщика, в итоге было осуществлено 160 попарных сравнений с использованием шкалы Ликерта, включающей пять возможных значений оценки степени согласия с некоторым утверждением (в данном случае с утверждением, что композиция A является более мелодичной [musical], чем композиция B): полностью не согласен, не согласен, где-то посередине, согласен, полностью согласен. В итоге лучшей из двух версий трансформера удалось победить LSTM (52 победы в сравнениях против 39), с небольшим отставанием от музыки, сочинённой людьми (61 победа в сравнениях). Согласно подсчётам авторов (включавших среди прочего поправку на множественную проверку гипотез, что является признаком весьма качественного статистического исследования; такая проверка позволяет учесть возможность того, что статистически значимый результат был получен случайно — лишь потому, что исследователи перебрали очень много гипотез), превосходство трансформерной модели с относительным кодированием позиции токена над моделью с абсолютным кодированием позиции токена оказалось статистически значимым, однако статистически значимое превосходство над LSTM ей показать не удалось, что неудивительно при таких скромных объёмах выборки. Конечно, в исследованиях, претендующих на уровень SOTA, хотелось бы видеть эксперименты с большим количеством оценщиков.

В начале 2020 г. на свет появился Pop Music Transformer, описанный в статье Ю-Сян Хуана и И-Сюань Яна под названием «Трансформер для поп-музыки: моделирование на основе тактовых долей [beat-based] и создание выразительных поп-композиций для фортепиано» (Pop Music Transformer: Beat-based Modeling and Generation of Expressive Pop Piano Compositions)[44].

Основой данного музыкального трансформера стала популярная модель для моделирования естественного языка под названием Transformer-XL. В качестве обучающего датасета был использован набор из 775 фортепианных композиций. Изюминкой модели стало новое представление музыкальных данных, получившее название REMI (REvamped MIdi-derived events, Скорректированные события, полученные из MIDI-представления). MIDI (Musical Instrument Digital Interface, Цифровой интерфейс музыкальных инструментов) — стандартный формат для обмена данными между электронными музыкальными инструментами. Музыка в формате MIDI представлена в виде последовательности событий [events], которыми могут быть нажатия клавиш, выбор тембра, темпа, тональности и так далее.

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

В целом наиболее продвинутой, основанной на трансформерах генеративной моделью для музыки является MuseNet от OpenAI. Её архитектура основана на тех же принципах, что и текстовые генеративные модели GPT-2 и GPT-3 (в MuseNet, как и в GPT-3, используются блоки разреженного трансформера). Длина контекста 72-слойной модели составляет 4096 токенов. По примерным прикидкам, в MuseNet должно быть около 2–3 млрд весов.

Для обучения модели был создан огромный датасет MIDI-файлов, в который вошли коллекции classicalarchives.com и bitmidi.com, датасет MAESTRO[45], а также ряд тематических и этнических сборников MIDI-музыки, собранных авторами в интернете. Этот датасет был затем дополнительно аугментирован путём небольших изменений темпа. Также в модель был включён специальный механизм, предназначенный для снижения вероятности прямого плагиата, когда модель просто воспроизводит достаточно длинные фрагменты, представленные в обучающей выборке. К сожалению, хотя MuseNet и можно воспользоваться онлайн, информация о самой модели в настоящее время ограничивается лишь популярным постом[46] в блоге OpenAI, то есть препринт исследования не был опубликован. Будем надеяться, что OpenAI рано или поздно поделится с сообществом деталями своих экспериментов.

В целом генеративные музыкальные модели, работающие на уровне нотного текста, стали в наши дни помощниками композиторов, а иногда способны и на создание вполне самостоятельных произведений на уровне лучших композиторов. В 2019 г. впервые в истории был подписан контракт между крупным музыкальным лейблом (Warner Music) и компанией, создавшей систему для алгоритмической генерации музыки — Endel[47].

Семейство генеративных музыкальных моделей SymFormer, работающих в нотном домене, создано у нас в Управлении экспериментальных систем машинного обучения департамента SberDevices «Сбера» командой под руководством Алексея Минина[48], [49]. С творчеством этих нейросетей можно познакомиться в сервисе «Звук», где оно размещается от имени нейросетевого ансамбля Aiphoria[50].

Концерт, где генеративная нейросеть впервые в мире стала солистом и импровизатором, состоялся в рамках культурной программы Восточного экономического форума (ВЭФ) в сентябре 2023 г. Это выступление стало результатом нашей совместной работы с известным российским музыкантом и композитором Петром Дрангой[51].

Но нельзя ли добиться столь же впечатляющих результатов, работая с акустическими данными? В конце концов, мы же упоминали, что модель WaveNet, обученная на записях фортепианных концертов, способна на самостоятельную импровизацию? Почему бы не избавиться раз и навсегда от всех этих библиотек инструментов и математически точного исполнения нот, лишённого индивидуального стиля исполнителя? Быть может, удастся замахнуться и на большее? Быть может, такая модель сможет заодно воспроизводить и человеческое пение — чем голос не музыкальный инструмент, пусть и сложный? Так или иначе, всё многообразие звуков, составляющих в сумме музыку, сводится к колебаниям среды, которые можно описать в виде наборов чисел. С вычислительной точки зрения это, на первый взгляд, звучит совершенно фантастически. Однако в мире нашлись исследователи, которых это не испугало. Речь идёт о создателях модели Jukebox. В конце апреля 2020 г. в блоге компании OpenAI появилась статья[52], описывающая доселе невиданную модель. Статья содержала ссылку на препринт исследования под названием «Jukebox: генеративная модель для музыки» (Jukebox: A Generative Model for Music)[53], а также популярное объяснение принципов работы модели и примеры сгенерированных музыкальных произведений.

Jukebox получает на вход информацию о жанре, исполнителе, а также текст песни и генерирует на их основе готовое музыкальное произведение. Можно сказать, что Jukebox самостоятельно сочиняет и исполняет музыкальное произведение с заданным текстом в стиле заданного исполнителя. Выглядит как магия, не правда ли?

Типичная песня продолжительностью четыре минуты в CD-качестве (44 кГц, 16 бит) представляет собой последовательность из более чем 10 млн элементов. Современные модели на основе трансформеров способны «видеть» контекст длиною всего в несколько тысяч элементов. Этого совершенно недостаточно для того, чтобы «постичь» высокоуровневую музыкальную семантику. Одним из наиболее популярных инструментов глубокого обучения, предназначенных для борьбы с «проклятием размерности», являются автокодировщики. Автокодировщик может сжать оригинальный звук в пространство меньшей размерности, отбрасывая некоторые несущественные для восприятия части информации. Затем можно обучить модель генерировать звук в этом сжатом пространстве, а затем «развернуть» полученное латентное представление в исходное звуковое пространство при помощи декодера. В Jukebox роль автокодировщика выполняет усовершенствованная версия модели VQ-VAE. При этом используется сразу три уровня кодирования, которые сжимают исходный звук в 8, 32 и 128 раз соответственно. В зависимости от степени сжатия восстановленный звук становится всё более и более шумным, но даже сжатый в 128 раз сигнал сохраняет информацию о высоте тона, тембре и громкости звука.

Каждый уровень VQ-VAE кодирует вход независимо. Кодирование нижнего уровня (8 : 1) обеспечивает реконструкцию самого высокого качества, в то время как кодирование верхнего уровня (128 : 1) сохраняет только важную музыкальную информацию.

Каждому уровню VQ-VAE соответствует нейронная сеть для прогнозирования распределения вероятностей следующего элемента последовательности. Эти 72-слойные сети основаны на упрощённой версии блоков разреженного трансформера. Длина контекста каждой из сетей составляет 8192 элемента, что составляет для каждого из уровней 24 секунды, 6 секунд и 1,5 секунды соответственно. Модели более низкого уровня позволяют детализировать звук, внося в него более низкоуровневую структуру.

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

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

В январе 2023 г. свою новую нейросеть для генерации музыки представили исследователи из Google. Сеть получила название MusicLM. Она способна генерировать аудиозаписи с частотой дискретизации 24 кГц на основе текстовых описаний, таких как «успокаивающая мелодия скрипки, сопровождаемая гитарным риффом с дисторшн-эффектом» [a calming violin melody backed by a distorted guitar riff]. Авторы модели также опубликовали набор данных MusicCaps, состоящий из 5 521 пары «текстовое описание — музыка»[54].

Несмотря на то что Jukebox и MusicLM стали большими шагами вперёд в отношении качества музыки и возможности управлять результатами композиции, разрыв между созданной ими музыкой и музыкой, сочинённой и исполненной людьми, всё ещё значителен. Хотя сгенерированные песни демонстрируют локальную музыкальную согласованность, следуют традиционным последовательностям аккордов и даже могут содержать впечатляющие соло, в них отсутствуют характерные признаки крупномасштабной семантической структуры (например, припевы). Автокодировщики нередко вносят в звуковой ряд заметный шум. Кроме того, скорость синтеза чрезвычайно медленная. В экспериментах авторов модели для создания одной минуты звука требовалось около 9 часов, поэтому Jukebox пока что нельзя использовать в интерактивных приложениях. Помимо этого, модель может сочинять песни только на английском языке. И всё же в числе отобранных авторами исследования композиций есть замечательные образцы. Чего стоят хотя бы ожившие голоса Луи Армстронга и Фрэнка Синатры, поющие современные тексты в своём узнаваемом стиле! При этом прелесть ИИ заключается в том, что в будущем результаты будут только улучшаться. Талантливый композитор или исполнитель не столь долговечен, как человеческие знания и технологии. Композиторы и исполнители современности не всегда могут достичь столь же выдающихся результатов, как их предшественники, в отношении же моделей машинного обучения технический прогресс обещает нам движение только вперёд, без отступлений и компромиссов.

Loading comments...
  1. Maurer J. A. (1999). A Brief History of Algorithmic Composition // https://ccrma.stanford.edu/~blackrse/algorithm.html
  2. Grout D. J., Palisca C. V. (2001). A History of Western Music. W. W. Norton & Company: New York // https://books.google.ru/books?id=OdGOPwAACAAJ
  3. Maurer J. A. (1999). A Brief History of Algorithmic Composition // https://ccrma.stanford.edu/~blackrse/algorithm.html
  4. Grout D. J., Palisca C. V. (2001). A History of Western Music. W. W. Norton & Company: New York // https://books.google.ru/books?id=OdGOPwAACAAJ
  5. Maurer J. A. (1999). A Brief History of Algorithmic Composition // https://ccrma.stanford.edu/~blackrse/algorithm.html
  6. * Здесь — полифонический приём преобразования нотной последовательности, заключающийся в воспроизведении её интервалов в противоположном направлении от некоего неизменяющегося звука: восходящему ходу в основном (прямом) движении партии в обратном движении соответствует ход на такой же интервал вниз, и наоборот.
  7. Grout D. J., Palisca C. V. (2001). A History of Western Music. W. W. Norton & Company: New York // https://books.google.ru/books?id=OdGOPwAACAAJ
  8. Alpern A. (1995). Techniques for algorithmic composition of music // http://alum.hampshire.edu/~adaF92/algocomp/algocomp95.html
  9. Maurer J. A. (1999). A Brief History of Algorithmic Composition // https://ccrma.stanford.edu/~blackrse/algorithm.html
  10. Alpern A. (1995). Techniques for algorithmic composition of music // http://alum.hampshire.edu/~adaF92/algocomp/algocomp95.html
  11. Хаскинс Р. (2016). Быть Джоном Кейджем. Американский «плодотворный анархизм»: танец души / Гефтер, 18.05.2016 // http://gefter.ru/archive/18580
  12. Maurer J. A. (1999). A Brief History of Algorithmic Composition // https://ccrma.stanford.edu/~blackrse/algorithm.html
  13. Matossian N. (1986). Xenakis. London: Kahn and Averill // https://books.google.ru/books?id=Aj8IAQAAMAAJ
  14. Varga B. A., Xenakis I. (1996). Conversations with Iannis Xenakis. London: Faber and Faber // https://books.google.ru/books?id=SD1iQgAACAAJ
  15. Matossian N. (1986). Xenakis. London: Kahn and Averill // https://books.google.ru/books?id=Aj8IAQAAMAAJ
  16. Varga B. A., Xenakis I. (1996). Conversations with Iannis Xenakis. London: Faber and Faber // https://books.google.ru/books?id=SD1iQgAACAAJ
  17. Ферапонтова Е. В. (2004). Ксенакис Янис / Большая российская энциклопедия // https://bigenc.ru/music/text/2638850
  18. Maurer J. A. (1999). A Brief History of Algorithmic Composition // https://ccrma.stanford.edu/~blackrse/algorithm.html
  19. Eck D., Schmidhuber J. (2002). A First Look at Music Composition using LSTM Recurrent Neural Networks. Technical Report No. IDSIA-07-02 // http://people.idsia.ch/~juergen/blues/IDSIA-07-02.pdf
  20. Eck D., Lapalme J. (2006). Learning musical structure directly from sequences of music. Technical report, University of Montreal // http://www.iro.umontreal.ca/~eckdoug/papers/tr1300.pdf
  21. Correa D., Saito J., Abib S. (2008). Composing music with BPTT and LSTM networks: Comparing learning and generalization aspects / Proceedings of 2008 11th IEEE International Conference on Computational Science and Engineering — Workshops, pp. 95—100 // 10.1109/CSEW.2008.69
  22. Sturm B. L., Santos J. F., Korshunova I. (2015). Folk music style modelling by recurrent neural networks with long short term memory units // https://ismir2015.ismir.net/LBD/LBD13.pdf
  23. Callahan D. (2018). AI created more than 100,000 pieces of music after analyzing Irish and English folk tunes / KTH Royal Institute of Technology. News & events // https://www.kth.se/en/aktuellt/nyheter/ai-created-more-than-100-000-pieces-of-music-after-analyzing-irish-and-english-folk-tunes-1.845897
  24. Hadjeres G., Pachet F., Nielsen F. (2017). DeepBach: a Steerable Model for Bach Chorales Generation // https://arxiv.org/abs/1612.01010
  25. Morgen O. (2016). C-RNN-GAN: Continuous recurrent neural networks with adversarial training // https://arxiv.org/abs/1611.09904
  26. Yang L.-C., Chou S.-Y., Yang Y.-H. (2017). MidiNet: A Convolutional Generative Adversarial Network for Symbolic-domain Music Generation // https://arxiv.org/abs/1703.10847
  27. Waite E. (2016). Generating Long-Term Structure in Songs and Stories // https://magenta.tensorflow.org/2016/07/15/lookback-rnn-attention-rnn/
  28. Chu H., Urtasun R., Fidler S. (2016). Song From PI: A Musically Plausible Network for Pop Music Generation // https://arxiv.org/abs/1611.03477
  29. Roberts A., Engel J., Raffel C., Hawthorne C., Eck D. (2018). A Hierarchical Latent Vector Model for Learning Long-Term Structure in Music // https://arxiv.org/abs/1803.05428
  30. Kotecha N., Young P. (2018). Generating Music using an LSTM Network // https://arxiv.org/abs/1804.07300
  31. Dong H.-W., Hsiao W.-Y., Yang L.-C., Yang Y.-H. (2017). MuseGAN: Symbolic-domain music generation and accompaniment with multitrack sequential generative adversarial networks // https://arxiv.org/abs/1709.06298
  32. Wu J., Hu C., Wang Y., Hu X., Zhu J. (2017). A Hierarchical Recurrent Neural Network for Symbolic Melody Generation // https://arxiv.org/abs/1712.05274
  33. Simon I., Oore S. (2017). Performance RNN: Generating music with expressive timing and dynamics // https://magenta.tensorflow.org/performance-rnn
  34. Colombo F., Gerstner W. (2018). BachProp: Learning to Compose Music in Multiple Styles // https://arxiv.org/abs/1802.05162
  35. Нейросеть Яндекса создала музыку в стиле Скрябина (2017) / Викиновости, 30 мая 2017 // https://ru.wikinews.org/wiki/Нейросеть_Яндекса_создала_музыку_в_стиле_Скрябина
  36. Камерный оркестр исполнил музыку, написанную нейросетью «Яндекса» под Скрябина (2017) / Meduza, 30 мая 2017 // https://meduza.io/shapito/2017/05/30/kamernyy-orkestr-ispolnil-muzyku-napisannuyu-neyrosetyu-yandeksa-pod-skryabina
  37. 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
  38. Yamshchikov I. P., Tikhonov A. (2017). Music generation with variational recurrent autoencoder supported by history // https://arxiv.org/abs/1705.05458
  39. Ализар А. (2019). Нейросеть «Яндекса» стала соавтором пьесы для альта с оркестром / Хабр, 22 февраля // https://habr.com/ru/post/441286/
  40. Иванов С. М. (2018). Нейросетевая Генерация Музыки. Выпускная квалификационная работа. Московский государственный университет имени М.В. Ломоносова. Факультет вычислительной математики и кибернетики. Кафедра математических методов прогнозирования // http://www.machinelearning.ru/wiki/images/2/2c/2018_417_IvanovSM.pdf
  41. AI-generated music challenge // https://www.crowdai.org/challenges/ai-generated-music-challenge
  42. 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
  43. Piano-e-Competition dataset (competition history): http://www.piano-e-competition.com/
  44. 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
  45. 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
  46. Payne C. M. (2019). MuseNet / OpenAI blog, April 25, 2019 // https://openai.com/blog/musenet/
  47. 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
  48. Минин А. (2022). Маэстро: как виртуальные ассистенты Салют превращают текст в музыку / Хабр, 23 декабря 2022 // https://habr.com/ru/companies/sberdevices/articles/707138/
  49. Минин А. (2021). SymFormer: как мы написали музыку с помощью трансформеров и вариационных автоэнкодеров / Хабр, 25 ноября 2021 // https://habr.com/ru/companies/sberdevices/articles/591441/
  50. Aiphoria (2024) // https://zvuk.com/artist/211304339
  51. ИИ впервые в мире солировал на концерте ВЭФ во Владивостоке // https://ria.ru/20230910/kontsert-1895341104.html
  52. 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/
  53. 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
  54. Agostinelli A., Denk T. I., Borsos Z., Engel J., Verzetti M., Caillon A., Huang Q., Jansen A., Roberts A., Tagliasacchi M., Sharifi M., Zeghidour N., Frank C. (2023). MusicLM: Generating Music From Text // https://arxiv.org/abs/2301.11325