TheGlueNote is a representation model for note-wise music alignment.
The repo structure is as follows:
- data contains:
checkpoints
: small and mid model included in repo, large model available onlinenasap
: raw training data based on the MIDI files in the (n)ASAP datasettesting
: Vienna4x22 data for testing as well as output directories for images and parangonada files
- src contains:
config
: configurations filedatasets
: pytorch dataset, collator, and data augmentation (synthetic complex mismatches)eval
: testing utilitymodel
: model source codepost
: post-processing of model predictionstest.py
: run pre-trained models on the 4x22 data using the testing utilitytrain.py
: train pre-trained or fresh models on the (n)ASAP data using the synthetic augmentations
clone the repository and make sure you have the dependencies installed (easiest via the requirements.txt
, except for pytorch which needs to fit your machine):
- pytorch
- pytorch-lightning
- wandb
- numpy
- scipy
- miditok
- symusic
- parangonar
- matplotlib
This repository is collects data, code, and checkpoints as used for the publication below. The provided scripts allow for testing and (re-)training in a very similar fashion to what was done for the experiments in the paper.
If you want to use TheGlueNote to create note alignments with as little hassle as possible, it is integrated in parangonar, a python library for alignment that is pip-installable and provides a simple interface to apply several note alignment algorithms.
@inproceedings{peter24thegluenote,
title={TheGlueNote: Learned Representations for Robust and Flexible Note Alignment},
author={Peter, Silvan David and Widmer, Gerhard},
booktitle={Proceedings of the 25th International Society for Music Information Retrieval Conference (ISMIR), San Francisco, USA},
year={2024}
}