Использование TensorFlow для разработки ИИ, способного сочинять музыку
Введение в предысторию и очки знаний
Искусственный интеллект продолжает накаляться.
Проект Google Magenta (пурпурный)
markMake Music and Art Using Machine Learning
Исходный код проекта находится на гитхабе, можно установить pip install.
Вы можете проверить официальную документацию для использования.
Используемый формат хранения музыки
markMP3 содержит музыку, а midi немного похож на электронные ноты, которые сообщают компьютеру, как их играть.
Используемая технология нейронной сети
RNN и LSTM (длинная кратковременная память, основанная на оптимизации RNN) долговременная кратковременная память
Зачем использовать RNN (рекуррентную нейронную сеть)?
-
Каждый вход RNN связан с предыдущим выходом
-
Может хорошо обрабатывать сериализованные данные. Предыдущие данные и последние данные связаны и подвержены влиянию.
-
Может «генерировать» новый сериализованный объект на основе предыдущего сериализованного объекта.
Генерация предложений (сериализация)
Я китаец, я очень люблю свою Родину, скажу я
Каждое слово в последовательности нельзя перевернуть, оно идет по порядку.
markРекуррентная нейронная сеть даст нам ответ.
Создание музыки (также сериализация)
markОн также может генерировать новую музыку для нас на основе предыдущей музыки.
Основы музыки
markПримечание.
Октава: Октава
Октава состоит из 12 полутонов.
Произносится как диез, это символ диеза в музыке, а звук перед диезом повышается на полтона.
markc# на один полутон выше, чем c. Также есть полутон между c# и d. Разница между c и d составляет целый тон. После этого каждый интервал является полутоном.
Ми и фа эквивалентны ми и фа, и на самом деле между ними есть полутон, а не целый тон.
Конечная b и следующая C на полшага выше.
markСмысл языка программирования C# на самом деле заключается в музыкальной ноте.
c# : c на полтона выше
таблица для заметок
markЭтими цифрами обозначен формат миди. C4 center и A4 оба являются тюнинговыми узлами.
0-127 представляют разные ноты.
midi kits.net/Mystery_По словам Алайи...
Цифры обозначают соответствующие звуки.
marknewt.Phys.u NSW.Amounts.AU/Tonight/notes.Contracts…
Стандартное пианино имеет 88 клавиш и не может отображать все 128 данных.
Самая низкая нота фортепиано начинается с A0 (21). a0 соответствует белой клавише, a#0 соответствует черной клавише, а B0 соответствует белой клавише 23
markМежду B0 и c1 находится полутон.
Фортепиано имеет семь октав,12*7
В октаве 12 полутонов.
Фортепиано с 88 клавишами имеет семь октав. Добавьте 3 ключа в начале и 1 ключ с8 в конце
12*7 + 3 +1 =88
Образцы песен 1 и 2
Хорошо, я могу слушать
ограничение
markСвязь между музыкой и математикой
mark markЕсть ли связь между живой музыкой и скучной математикой?
Математика – королева науки.
Математика лежит в основе большинства изучаемых нами дисциплин: физики, криптографии, астрономии, химии.
-
Базовый язык компьютера также двоичный, например 0,1 (переключатель транзистора в процессоре).
-
Немецкий математик Гаусс сказал: «Математика — королева науки».
природа музыки
- Музыка состоит из звуков
- Звук состоит из повторяющихся звуковых волн
- Высота ноты имеет соответствующую частоту, описываемую Гц.
www.paleotechnologist.net/?p=2253
markПредставление частоты (HZ), соответствующее примечанию. Минимальный, идеальный, максимум.
математика в музыке
-
Математика часто встречается в нотах: 2/4 (четвертная нота - доля, две доли на такт)
-
Связь между нотами также представлена математикой.
Две четвертные ноты в сумме составляют половинную ноту. Две восьмые ноты в сумме составляют четвертную ноту
Целые ноты выражаются как сумма нескольких добавленных нот.
- Ритм – это организация музыки во времени.
Пифагорейский ритм
- Две струны удлиняются до простого целочисленного отношения, играя одновременно или последовательно, чтобы получить гармоничный звук.
Пифагорейская теорема Пифагора
-
Гармоничные пропорции во всей «музыке» природы
-
Расстояния между планетами Вселенной представляют собой простые целые отношения, а при беге издается красивая сферическая музыка.
Доказательство французского математика Фурье
преобразование Фурье
-
Все музыкальные звуки (как инструментальные, так и вокальные) можно выразить математически.
-
представляет собой сумму некоторых простых периодических синусоидальных функций
-
Каждый звук имеет три качества: высоту тона, громкость и тембр.
Золотое сечение и последовательность Фибоначчи
-
Есть довольно много композиторов, которые используют золотое сечение и последовательность Фибоначчи, чтобы помочь им сочинять.
-
Золотое сечение: 0,618:1
-
Последовательность Фибоначчи:
Начиная с 1, 1 + 2 равно 3, и заранее существует золотое соотношение.
Выразите музыкальную форму в нашей математической форме, поместите ее в нашу рекуррентную нейронную сеть и сгенерируйте для нас новые музыкальные формы после обучения.
что такое миди файл
- Цифровой интерфейс музыкальных инструментов
Бинарный файл "Digital Score"
Базовая структура: заголовок файла + описание данных
Эрик, насколько это возможно app.com/blog/2014/0…
markзаголовок, за которым следуют данные
- Современная музыка почти всегда состоит из библиотеки Midi плюс звуковая библиотека для синтеза.
что такое миди
- В начале 1980-х было предложено решить проблему связи между электроакустическими музыкальными инструментами.
- Записи — это заметки, управляющие параметры и другие инструкции. Он инструктирует устройство, что делать и как это делать.
- Компьютеры, синтезаторы, звуковые карты и электронные музыкальные инструменты могут управлять друг другом и обмениваться информацией.
Подключите электрогитару под управлением миди-устройства. Электронный орган и др.
Разница между MIDI и нотоносцем
Персонал для людей, чтобы играть
MIDI предназначен для игры на компьютере.
Анализ формата MIDI-файлов — теория
Мы продемонстрируем, как читать данные из midi и сохранять их в наш двоичный файл.
Назовем обучение нашей нейронной сети. Миди-файл также будет сгенерирован после обучения.
После того, как мы конвертируем миди-файлы в mp3-файлы, слушайте, как вы играете.
Объем информации, содержащейся в MiDI, обычно намного больше, чем в нотоносцах.
Преимущества МИДИ
Небольшой: файлы MIDI обычно больше десяти килобайт, файлы MP3 обычно больше десяти МБ. 1 МБ = 1024 КБ.
Записана богатая информация: дорожка, высота тона, интенсивность, громкость, вибрато, фаза, ритм.
Повысьте эффективность создания музыки, уменьшите стоимость, группа стоит слишком дорого
Пример MIDI-файла.
MIDI — это электронная музыкальная партитура. Как правило, в нее нельзя играть напрямую. выиграть можно играть напрямую.
Программное обеспечение Garage Band может воспроизводить.
Настройте среду разработки для композиции ИИ
TensorFlow
keras
sudo pip install keras
Music21 (для некоторых музыкальных форматов)
sudo pip install music21
H5Py для хранения двоичных данных
sudo pip install h5py
Ffmpeg (обработка музыкальной звуковой карты)
sudo apt install ffmpeg
Робость (миди в мп3)
sudo apt install timidity
Программный пакет от Массачусетского технологического института.
Интерфейс для Python HDF5. Работа с форматом данных hdf5
ffmpeg — это кроссплатформенный конвертер аудио в видео.
робость - это тот, кто может пойти играть миди.
sudo pip install keras
sudo pip install music21
sudo pip install h5py
sudo apt install timidity