litbaza книги онлайнРазная литератураОхота на электроовец. Большая книга искусственного интеллекта - Сергей Сергеевич Марков

Шрифт:

-
+

Интервал:

-
+

Закладка:

Сделать
1 ... 305 306 307 308 309 310 311 312 313 ... 482
Перейти на страницу:
раскрываем истинное происхождение альбома»[2950].

Создатели второй модели[2951], 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)[2952], в которой представил на суд общественности модель под названием C-RNN-GAN, основанную на соревнующихся LSTM‑сетях. Модель, обученная на 3697 произведениях 160 композиторов, научилась генерировать весьма приличную полифоническую музыку (правда, автор исследования, в отличие от создателей DeepBach, не проводил масштабных экспериментов по оценке качества этих произведений, поэтому в данном случае это не более чем субъективная оценка).

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

В общем, во второй половине 2010-х гг. было создано немало генеративных моделей, оперирующих музыкой на уровне нот или аккордов и использующих техники, характерные для эпохи первой революции в обработке естественного языка. Помимо упомянутых выше, среди них можно отметить также Song from PI[2955], MusicVAE[2956], BALSTM[2957], MuseGAN[2958], HRNN[2959], PerformanceRNN[2960] и BachProp[2961].

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

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

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

1 ... 305 306 307 308 309 310 311 312 313 ... 482
Перейти на страницу:

Комментарии
Минимальная длина комментария - 20 знаков. Уважайте себя и других!
Комментариев еще нет. Хотите быть первым?