Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Some formatting applied to some code and paragraphs (proposals) #2

Open
wants to merge 1 commit into
base: master
Choose a base branch
from
Open
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 24 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -19,39 +19,41 @@ All the music pieces we used for generating the audio samples on Youtube and the
## Preparation

- Install common libraries like
numpy
matplotlib
pickle
numpy
progressbar
sklearn
scipy
csv
keras
tensorflow
theano (some functions are only supported with theano because of recurrentshop)
```
numpy
matplotlib
pickle
numpy
progressbar
sklearn
scipy
csv
keras
tensorflow
theano (some functions are only supported with theano because of recurrentshop)
```
- Make sure you have installed the following packages
https://github.com/craffel/pretty-midi
https://github.com/farizrahman4u/recurrentshop/tree/master/recurrentshop
https://github.com/nschloe/matplotlib2tikz
+ https://github.com/craffel/pretty-midi
+ https://github.com/farizrahman4u/recurrentshop/tree/master/recurrentshop
+ https://github.com/nschloe/matplotlib2tikz

- Put your midi data in the folder 'data/original/'
- Group them into folders and name than for example 'style1', 'style2'
- Put your midi data in the folder `data/original/`
- Group them into folders and name than for example `style1`, `style2`
- Make sure you have at least 10 midi files per style, otherwise it can't form a test set
- Insert your style names into classes variable in settings.py
- Adjust parameters for training in settings.py
- Insert your style names into classes variable in `settings.py`
- Adjust parameters for training in `settings.py`
- Make sure you have all these files in the same folder

## Training

- Run either vae_training.py to use the full MIDI-VAE model or
- Run any of the style classifiers pitch_classifier.py, velocity_classifer.py or instrument_classifer.py
- Run either `vae_training.py` to use the full MIDI-VAE model or
- Run any of the style classifiers `pitch_classifier.py`, `velocity_classifer.py` or `instrument_classifer.py`

The models will be stored in the automatically generated folder models/
The models will be stored in the automatically generated folder `models/`

## Evaluation

- Change the model_name and epoch of your MIDI-VAE model that you want to evaluate
- Change the model names and epochs and weights for all the style classifiers
- Make sure you have set the same parameters as were used during training
- Run vae_evaluation.py
- Run `vae_evaluation.py`