1) Я не использовал Magenta и что конкретно там в коде не знаю. Я писал свое решение. Keras для сетки и библиотека mido для обработки midi файлов.
2) Абсолютно во всех статьях в интернете при создании последовательности (sequence) для обучения, используют только код ноты. Но в midi файле больше информации. И одна и та же нота может проигрываться по разному. Если не учитывать это, то результат получается монотонный. К сожалению такой подход увеличивает время обучения и требует большего количества midi файлов. Обратите внимание также на temp мелодии и отбирайте midi файлы с приблезительно одинаковым значением. И конечно же одного стиля музыки. Для тренировки я арендовал сервер с видеокартой NVIDIA Tesla-100 у Google.
И это тоже: www.aiva.ai
2) Абсолютно во всех статьях в интернете при создании последовательности (sequence) для обучения, используют только код ноты. Но в midi файле больше информации. И одна и та же нота может проигрываться по разному. Если не учитывать это, то результат получается монотонный. К сожалению такой подход увеличивает время обучения и требует большего количества midi файлов. Обратите внимание также на temp мелодии и отбирайте midi файлы с приблезительно одинаковым значением. И конечно же одного стиля музыки. Для тренировки я арендовал сервер с видеокартой NVIDIA Tesla-100 у Google.
Более наглядно:
https://soundcloud.com/andrew-gulenko/blues-neural-network-music-generation-rnn-lstm
https://soundcloud.com/andrew-gulenko/piano-neural-network-music-generation-rnn-lstm
https://soundcloud.com/andrew-gulenko/sinister-neural-network-music-generation-rnn-lstm-1
https://soundcloud.com/andrew-gulenko/sinister-neural-network-music-generation-rnn-lstm