A Systematic Comparison of Music Similarity Adaptation Approaches
Daniel Wolff1, Sebastian Stober2, Andreas Nürnberger2, Tillman Weyde1
1City University London, 2Otto-von-Guericke-Universität Magdeburg
Thanks for all the attention we got for our collaborative publication, we’re now finally releasing the code to ensure reproducibility of the experiments. Feel free to reuse and adapt the code but please cite the source and above publication if you do so.
You can download the poster here:
MLR and SVMLIGHT with MATLAB on MagnaTagATune:
The code used in this publication is split along the collaborators into two parts. MLR and SVMLIGHT were tested using a framework developed by Daniel Wolff at the MIRG group. You can download the code using subversion from the following repository:
For reproducing the results in the paper using Matlab follow these steps:
- Download the code from above using a mercurial client such asTortoiseHG
- Edit the working directories in the startup.m file of the downloaded code
- Start Matlab, change the working directory to the location of the downloaded code
- Execute the startup file, this initialises the dataset and could take a few minutes.
- Run the experiments using the scripts in core/magnatagatune/tests_evals (e.g. /mlr/mlr_fullstobgenrefeatures_fullsim_ISMIR12.m). This may take up to several hours depending on your machine.
- The struct “out” should now contain the output results in out.mean_ok_test etc… For more detailed analysis run test_generic_display_results.m in the output directory
If you use this code please cite our paper. We are more than welcoming your additional bits of functionality to be included in the package.
The Similarity Data
The constraints we created from the processed similarity data, binned to 10-fold cross-validation, is available for download below. Each cell in the xx_train and xx_test variables corresponds to one cross-validation fold. The columns in _train represent growing subsets, with the full training set in the last column of each row. In these cells, each matrix row [a,b,c] corresponds to -> clip a more similar to clip b than to clip c
-> d(a,b) < d(a,c). Please cite the above paper when using any data from here.