Недавно в Сети появился первый альбом группы Neurona — EP из четырех треков в жанре, сформулированном на «Яндекс.Музыке» как «альтернатива». За дебютом стоят американский вокалист Роб Кэррол и разработчики Иван Ямщиков и Алексей Тихонов. А предложенная ими альтернатива — почти альтернатива поэту — нейросеть, научившаяся писать стихи в духе лирики Курта Кобейна.
Это уже третий музыкально-алгоритмический эксперимент Ивана и Алексея после «Нейронной обороны» — вариации нейросети на тему творчества Егора Летова — и композиции, написанной алгоритмом в стиле работ Скрябина и исполненной камерным оркестром на Yet another Conference.
Когда оркестр, открывавший конференцию о применении новейших цифровых технологий в различных областях, смолк, на сцене появился Андрей Себрант и с видом очень сосредоточенным заявил: «То, что вы видели, — не просто метафора, а пример того, как изменилась наша жизнь с момента появления машинного интеллекта».
Мы выяснили у специалистов, что все это значит и к чему приведет.
Что такое нейросеть
Нейросети рисуют котов, ищут людей по фотографии, верстают сайты, переводят тексты и наконец читают рэп, пишут песни и музыку. Но прежде чем рассказать, как они это делают и какое будущее ждет музыкальную индустрию и индустрию развлечений с развитием нейросетей, важно прояснить пару базовых деталей.
Нейросеть — это тип алгоритма, вид машинного обучения, не более того. Никакого антропоморфного робота, возникающего в сознании большинства людей, когда они видят очередной броский заголовок, что нейросеть или искусственный интеллект опять что-то сделал, нет. «Если говорить очень просто, то машинное обучение — это обучение алгоритмов работать на основе данных, которые им показывают, — объясняет Михаил Биленко, руководитель управления машинного интеллекта и исследований „Яндекса“. —
Представьте, что вам нужно научить программу отличать кошек от собак на фотографии. Благодаря машинному обучению сейчас можно просто показать алгоритму набор картинок с кошками и набор картинок с собаками, и на основе этой информации он научится определять кошек и собак и на других картинках, которых не было в этих наборах. А нейросети — это просто один из видов машинного обучения, который крайне эффективно решает определенные классы задач».
Идея алгоритмического композиторства
Самое первое предположение о том, что машина может писать музыку, выдвинула автор идеи компьютера, математик Ада Лавлейс в 1843 году, а задачу сделать алгоритм, который бы моделировал собой мозг, ученые поставили перед собой в начале 60-х. Раз мозг сочиняет музыку, возможно, и алгоритм с такой задачей справится. Если же говорить о качественном прорыве в развитии нейросетей, позволившем научить их генерировать музыку, то он лежал не в плоскости математики, а в вычислительной стороне дела. И способствовали ему, как ни странно, геймеры 90-х.
«Оказалось, что графические карты, изначально создававшиеся для компьютерных игр, можно использовать для научных вычислений и для обучения нейросетей, поскольку при обучении там происходит параллельно очень много сравнительно простых процессов», — рассказывает Иван Ямщиков, сотрудник Института Макса Планка. Графическая карта в игре разбивает всю поверхность на треугольники, и каждый треугольник обрабатывает отдельно, а потом все склеивает вместе.
«В какой-то момент кто-то сказал: „Погодите, а давайте вместо картинок в компьютерных играх другие алгоритмы параллельных вычислений на видеокартах гонять!“ — в итоге сейчас за сравнительно небольшие деньги можно купить устройство, которое лет десять назад считалось бы суперкомпьютером, и на нем сравнительно быстро обучать достаточно глубокие нейросети», — говорит исследователь.
Как тренируется нейросеть
Чтобы научить нейросеть писать музыку, ей нужно дать очень большое количество примеров музыкальных произведений в понятном ей формате — например, партитуры или MIDI-файлы. Обучая сеть писать стилизации под Скрябина, операторы использовали в качестве примеров 4 гигабайта MIDI-файлов с классическими и современными произведениями.
Сбор примеров — первая большая проблема нейросетевого композиторства. Заключается она в том, что таких примеров нужно действительно очень много, а для обучения сетки подойдет далеко не каждый файл.
«Например, мы берем простенький хаус-трек с очень скучным монотонным басом, который всю композицию играет одну ноту. Если наша задача сделать музыку как можно более разнообразной, такой трек для обучения использовать не стоит: он сильно испортит качество результата. Все, чему от него научится нейросетка, — повторять одну и ту же ноту», — объясняет Ямщиков.
Поэтому после формирования дата-сета его приходится фильтровать, и определение принципов этой фильтрации — труд на границе между наукой и искусством.
Следующая задача оператора нейросети — определить, какую информацию из выбранного трека нужно передавать и в каком виде. По словам консультанта «Яндекса», есть несколько используемых моделей. Одна из них — автоэнкодер. Это метод, когда нейросеть слушает какой-то фрагмент музыки целиком, а потом должна целиком его воспроизвести, и чем ближе сетка попадает в оригинал, тем лучше.
Есть языковая модель — когда сеть слушает одну ноту и пытается предсказать следующую, слушает реальный ответ и опять пытается предсказать следующую ноту. В вопросе подходов на данный момент теории меньше, чем практики, поэтому программисты просто перебирают разные варианты и смотрят, где получается интереснее.
Что получается в итоге
В процессе работы над генерацией музыки Алексей Тихонов натренировал три нейросетки: одна пишет мелодию, одна — бас, и еще одна — барабаны. Такая система в целом больше напоминает прототип панк-группы, чем оркестра, поэтому для классического открытия с камерным оркестром ее использовать не стали.
Вместо этого мелодии, написанные нейросетью, отдали Марии Черновой, основателю и креативному директору «Артнови», композитору и эксперту по творчеству Скрябина. Ее задачей было связать написанные нейросетью пьесы в единую композицию и создать аранжировку под утвержденный состав камерного оркестра с сольной партией терменвокса.
Первую, более механистичную часть композиции машина на конференции сыграла сама, вторую — аранжированную Черновой — исполняли живые музыканты. И необходимость использовать живых исполнителей обязала внести в генеративную музыку еще ряд изменений. «При сохранении музыкального языка нейросети моя задача также состояла в том, чтобы придать пьесе форму, развитие и логику в гармоническом построении», — уточняет композитор.
Алгоритм-куплетист
Нейросети не только пишут музыку, но и слова, которые можно на нее наложить. В марте 17-летний школьник Робби Бэррат научил нейросеть сочинять рэп по мотивам текстов Канье Уэста, скормив ей 6 тысяч строк из его песен в качестве примеров.
Изначально алгоритм просто менял их местами, но потом стал писать лирику самостоятельно. Алексей Тихонов и Иван Ямщиков учили нейросеть писать тексты в стиле Летова и Кобейна. Первого выбрали из-за свойственной «Гражданской обороне» и всему русскому року высокому уровню апофении: в большинстве текстов жанра отсутствует авторский нарратив. Его в песни привносит рефлексирующий слушатель.
Дело в том, что в ходе работы обнажился еще один пробел на стыке математики и филологии. У машины проблема с сюжетностью, а объяснить ей, что это, некому. «Можно объяснить ей, что такое слово, но очевидно, что сюжет не сводится к слову и даже к предложению, — поясняет Иван Ямщиков. — Мы пытаемся разобраться с этой проблемой уже год, и не мы одни.
Инструментов, с помощью которых ее пытаются решить, очень много. Некоторые под это дело поднимают десятки миллионов долларов, но, к сожалению, когда заходишь на их сайты и хочешь что-нибудь „потрогать“, они ничего не показывают».
Жорж Польти еще в конце XIX века вывел теорию о том, что в мире существует всего 36 драматических ситуаций, Борхес и вовсе сократил их число до четырех. Но оператор нейросети на вопрос, сколько их, конечно ли число сюжетов, и если нет, как научить нейросеть писать новые, ответить не может.
В этом отношении следующий большой прорыв должен произойти с помощью людей искусства и гуманитариев. Чем лучше они научатся гуманитарные науки формализовать, тем больше шансов у разработчиков создать для них более интересные инструменты.
Нейросети и музыкальные сервисы
У нейросетей и музыки большое будущее. Во-первых, нейросети уже применяются фактически во всех музыкальных сервисах от Spotify до «Яндекс.Музыки» — там нейросеть советует пользователям новые треки.
Вообще, всякого рода рекомендательные алгоритмы — это колыбель машинного разума. Множество решений и методов, использующихся в разных приложениях искусственного интеллекта, было изначально придумано именно для алгоритмических рекомендаций.
«Есть такая цепочка базз-бордов: сначала все говорили про big data, потом все стали говорить про машинное обучение, а потом — про машинный интеллект и нейросети, — объясняет Иван Ямщиков. — Эта последовательность связана с производственным циклом разного рода айтишных компаний». Сначала они поняли: у них много информации о пользователях, которую нужно хранить, чтобы как-то впоследствии научиться на ней зарабатывать.
После того как данных стало достаточно много и на них уже можно было натравливать какие-то более продвинутые алгоритмы, все стали говорить про машинное обучение. А дальше в рамках машинного обучения появились нейросети, как раз обладающие большим преимуществом там, где речь идет о персонализации, вкусах и предпочтениях, и становящиеся все более доступной технологией.
«Сегодня нейросети помогают найти действительно похожие по звучанию треки, благодаря чему наши сервисы уже умеют воспринимать музыку как нечто большее, чем просто комбинацию исполнителя и жанра, — рассказывает Евгений Крофто, руководитель группы анализа музыки в „Яндекс.Музыке“. — Мы анализируем, какие треки пользователи слушают совместно, и обучаем сеть предсказывать их похожесть на основании одного лишь аудиосигнала». Очевидно, что в ближайшее время количество такого рода услуг будет расти вместе с уровнем персонализации рекомендаций.
Первый онлайн-продюсер
Год назад о себе заявил русский стартап Mubert — первый онлайн-композитор электронной музыки. Его продукт — свободный от копирайта поток ликвид-фанка, дип-хауса, эмбиента и чилстепа, генерируемый алгоритмом в режиме реального времени.
В апреле создатели приложения объявили о разработке версии для бегунов Mubert.Run, которая будет генерировать музыку, поддерживающую ритм атлета во время тренировки. Сейчас они привлекают к работе (на коммерческой основе) продюсеров, создающих музыку в диапазонах 160–180 ударов в минуту, и планируют партнерство с одним из спортивных мейджоров.
Музыка для спорта
Конечно, Mubert своим будущим релизом Америку не откроет, спортивные приложения подготовили обширную почву для интеграции в них генеративной музыки. Например, в 2012 году появилась веселая аудиоигра для спортсменов «Zombies, Run!».
Приложение с 200 разными миссиями синхронизировалось с картой местности и во время пробежки посылало в наушники игрока звуки преследующих его зомби, заставляя ускоряться. Больше 3 миллионов установок сделало приложение самой большой по числу участников фитнес-игрой на смартфоне. Также алгоритм мог бы изменять звуковую дорожку в игре, синхронизируясь, например, с пульсом пользователя.
Музыка для коммерческого видео
Оксфордский стартап Juckedeck, удостоенный «Каннских львов, генерирует royalty free музыку для рекламы. Здесь за 200 долларов можно купить аудио для коммерческого использования.
Музыка для общественных мест
Еще одна перспектива буквально двух-трех лет — персонализированная музыка в заведениях. Представьте, что вы чекинетесь на входе в кафе, а как только переступаете его порог, в нем меняется звуковое оформление. То есть алгоритм анализирует всех посетителей места и начинает подстраивать звучащую в нем музыку так, чтобы она нравилась в среднем им всем. Если развивать мысль дальше, возможно, на входе в ночной клуб фейсконтрольщик когда-нибудь будет не только мерить гостей испытующим взглядом, но и просить показать плейлист.
Рынок этот пока фактически свободный, и прийти сюда с новым продуктом может кто угодно, главное — придумать для технологии правильное применение.
Вытеснит ли нейросеть продюсера
Если нейросети освоятся в композиторском деле, то, по мнению Марии Черновой, они вполне смогут вытеснить авторов авангардной, интуитивной музыки или нойза. Но вытеснить музыканта-исполнителя ей не под силу. «Музыкант-исполнитель работает со временем, для человека время — это жизнь, люди его очень тонко ощущают, — размышляет она.
— Машина не сможет столь же тонко работать со временем, поскольку интуитивной гибкости ей не достичь. В живом исполнении всегда присутствует доля импровизационности, что и подкупает зрителя, хотя я совсем не исключаю появления робоколлективов».
На самом же деле, перед пишущей музыку нейросетью задачи заменить композитора никто и не ставит. «Обычно мы хотим, чтобы машина делала не то, что мы умеем, а то, чего мы не умеем, — говорит Ямщиков. — Экскаватор не заменяет человека с лопатой, при всей схожести с ним, он может делать принципиально другие вещи.
И мы все равно используем человека с лопатой, когда копаем грядки на даче, но, когда нам нужно сделать фундамент для дома, мы используем экскаватор». По его словам, не так интересно, научится ли машина писать музыку, как человек. Интересно другое: сможет ли человек с помощью машины сделать нечто принципиально отличающееся от направлений искусства, уже им созданных.