Piano music generation using deep learning.
We believe there are largely 2 ways to generate music:
- Generate the sound waves, which we tried and failed (https://github.com/lyh710/deep_piano/tree/music_as_time_series)
- Generate notation (sheet music), which we focused on here.
- Windows 10 Home, i7 Core, 16GB ram (most subsequent steps should still hold true if with Mac/Linux, but some will need to be modified, such as the conda env setup batch)
- NVIDIA GeForce GTX 1080 with Max-Q, 8GB (Google CoLab would be a good alternative)
- conda env setup: dnn_gpu_setup_test\conda_dnn_gpu_setup.bat (Ananconda3)
By converting music files into music-sheets (notations), we can empploy Deep-Learning technique that has been widely used in the NLP domain to generate music. The idea is largely similar to text generation with Deep-Learning, in which LSTM or other more sophisticated architecture can be employed.
This is mainly done by the music21 package: https://web.mit.edu/music21/doc/index.html