This repository is a companion resource to my M.Sc. thesis of the same name as well as the ICCC 2023 paper at https://arxiv.org/abs/2306.00281.
Cite: Doosti, Anahita, and Matthew Guzdial. "Transfer Learning for Underrepresented Music Generation." arXiv preprint arXiv:2306.00281 (2023).
This work investigates a combinational creativity approach to transfer learning to improve the performance of deep neural network-based models for music generation on out-of-distribution (OOD) genres. We identify Iranian folk music as an example of such an OOD genre for MusicVAE, a large generative music model. We find that a combinational creativity transfer learning approach can efficiently adapt MusicVAE to an Iranian folk music dataset, indicating potential for generating underrepresented music genres in the future.
This work uses the code available for MusicVAE by Google Magenta. (See repository)
Use the notebooks in the \notebooks
to run experiments. (I recommend running on Colab.)
The Iranian folk music dataset is in data\tfrecord\Persian\persian_100_v1
. They are seperated into 5 folds.
- fold_X_train.tfrecord: Contains every fold other than fold X.
- fold_X_test.tfrecord: Contains fold X.
(X is a number from 1 to 5.)
-
Clone the repository [on a Cedar server]
-
Set the python module
[name@server ~]$ module load python/3
-
Create a virtual environment
[name@server ~]$ virtualenv --no-download MVAE2
-
Activate your newly created Python virtual environment.
[name@server ~]$ source tensorflow/bin/activate
-
Install TensorFlow in your newly created virtual environment using the following command.
(MVAE2) [name@server ~]$ pip install --no-index tensorflow==2.11
This Github is not going to be actively maintained. Feel free to contact me for assistance and more info: anahita.doosti@ualberta.ca