Music-Generation icon indicating copy to clipboard operation
Music-Generation copied to clipboard

A toolkit for symbolic music generation in PyTorch (using transformers and rnn)

Music-Generation

This is a toolkit for symbolic music generation in pyTorch. You can generate tracks from scratch (unconditional) or continuation for a given track.


Features

  • Using pytorch_lightning as backend.
  • Using Deepmusic for encoding/decoding MIDI files.
  • Supporting different transformer models + vanilla rnn. (vanilla, linear, huggingface transformers)
  • Supporting Compound Word and REMI representations. (see references)

Usage

Please see main.ipynb to learn how to train a model and generate music!


Generated Samples

check out assets directory!


References

[1] https://github.com/YatingMusic/compound-word-transformer

[2] https://github.com/YatingMusic/remi

[3] https://github.com/idiap/fast-transformers

[4] https://github.com/huggingface/transformers