Игра на фортепиано и сочинение, сведенное к восьми клавишам


Если у вас была мечта просто сесть за пианино и сыграть что-то удивительное импровизированное, тогда ваша мечта может стать реальностью — и без всей тяжелой работы по изучению теории музыки. ИИ проявляет творческий подход еще по-другому.

Идея, кажется, зародилась в практике игры на воздушной гитаре:
«- исполнители играют на фиктивных струнах с ритмической связностью и даже двигают руками вверх и вниз по воображаемой доске в соответствии с мелодическими контурами, то есть движение вверх и вниз в мелодии. Это предполагает пару атрибутов, которые могут функционировать как эффективный протокол связи между не музыканты и генеративные музыкальные системы:
1) ритм,
и
2) мелодические контуры.
Помимо воздушной гитары, в ритм-играх, таких как Guitar Hero, также используются эти два атрибута »
Идея состоит в том, чтобы преобразовать такие общие музыкальные характеристики «высокого уровня» в реальные ноты на фортепиано, и предлагается, чтобы было достаточно всего восьми кнопок или клавиш. Но ждать! Фортепиано имеет 88 клавиш (обычно) и, следовательно, представляет собой 88-мерное логическое пространство, соответствующее тому, какие клавиши нажимаются или нет.
Можете ли вы рассчитывать сопоставить 8-мерное пространство кнопок с 88-мерным пространством?
Ответ, согласно Крису Донахью, Яну Саймону, Сандеру Дилеману, исследователям из Google AI и DeepMind, кажется положительным, и именно здесь на помощь приходит теория музыки. Не все комбинации клавиш используются вместе; большинство звучит несогласно. Другими словами, западная музыка использует определенное подпространство 88-мерного пространства. Конечно. это даже сложнее, потому что то, какая нота следует за другой, и какие ноты составляют приятные аккорды, также ограничены.
Так что в принципе должно быть возможно построить устройство ввода меньшего размера для вывода чего-то, что звучит как музыка. На этом этапе вы должны думать о «нейронной сети», но возникает проблема — у нас нет примеров использования 8-кнопочной клавиатуры для воспроизведения музыки. Это означает, что у нас нет обучающего набора, и нам нужно сделать что-то другое.
Другой способ использовать нейронную сеть — использовать ее для реализации автокодировщика. Все автоэнкодеры учатся воспроизводить свои входные данные. Вы спросите, какая от этого польза? Ответ заключается в том, что если вы используете в автокодировщике меньше нейронов, чем необходимо для простой фиксации входных данных в памяти, результатом будет структурированное уменьшение размеров, которое мы и ищем.
Это основной принцип метода, но в этом случае нам также нужны отношения между последовательными нотами, а это означает, что нам нужна рекуррентная нейронная сеть — то, что намного сложнее обучить. В этом случае для формирования автокодировщика использовались две повторяющиеся сети. Первый, кодировщик, принимает стандартные 88-нотные фортепианные последовательности и отображает их на восемь выходов; второй, декодер, берет восемь выходов кодера и отображает их в ту же последовательность из 88 нот. Обучение состоит в том, чтобы просто научиться правильно воспроизводить входящую музыку, но обратите внимание, что все данные проходят через представление с 8 кнопками. Уберите первую нейронную сеть, и вы можете нажимать кнопки вручную и, надеюсь, создавать новую музыку.

В обучении использовалось 1400 выступлений на конкурсе электронных фортепиано и, следовательно, они научились воспроизводить высококачественные выступления. В результате получился Piano Genie, который вы можете услышать в следующем видео:

Вы также можете попробовать это сами на https://tensorflow.github.io/magenta-demos/piano-genie/.
Модель, использующая TensorFlow, также доступна для вас, чтобы поэкспериментировать с ней другим способом.
В конце статьи говорится:
«Мы предложили Piano Genie, интеллектуальный контроллер, который позволяет музыкантам, не являющимся музыкантами, импровизировать на фортепиано. Piano Genie обладает непосредственностью, которой нет у других работ в этой области; звук воспроизводится в тот момент, когда игрок взаимодействует с нашим программным обеспечением, а не требует трудоемких конфигурации. Кроме того, игрок остается в импровизационном цикле, поскольку он реагирует на генеративную процедуру в режиме реального времени. Мы считаем, что структура автоэнкодера является многообещающим подходом для изучения сопоставлений между сложными интерфейсами и более простыми, и надеемся, что эта работа поможет будущее исследование этого пространства ».
Они также пытались выяснить, что люди думают об этом, позволяя людям попробовать, а затем спрашивая, насколько им это нравится. В основном им это нравилось, и они были впечатлены. Лично я, как меломан, не играющий в музыку, мне показалось, что взаимодействие было интересным, но я не чувствовал, что действительно контролирую ситуацию, просто направляя общее направление — выше или ниже — возможно, это требует времени.
Попробуй это.
Меня особенно интересуют различия между пользователями, которые умеют играть на пианино, и теми, кто не умеет.
Понятно, что это требует доработки. Возможно, это указывает путь к новым способам игры и сочинения музыки, но я думаю, что для этого нужно нечто большее. Понятно, что музыкальное пространство не 88-мерное, но, вероятно, и не 8-мерное — интересно, что будет с 12 кнопками?


Добавить комментарий