Skip to content

craffel/alignment-search

Repository files navigation

alignment-search

Code for searching for good MIDI aliginment parameters. Incomplete dependency list:

Tentative general procedure:

  1. Collect 1000 non-corrupt MIDI files
  2. Create a corrupted version for each MIDI file, which reflects common minor issues found in audio-to-audio alignment (see create_data.py and corrupt_midi.py)
  3. Run GP-SMBO hyperparameter optimization over the standard DTW-based MIDI alignment scheme to choose the alignment architecture which best turns the lightly-corrupted MIDI files back into the original files (see experiment.py)
  4. Create a second corrupted version for each MIDI file, which reflects quite major corruptions which we don't expect an alignment scheme to fix in all cases
  5. Run hyperparameter optimization again, and either jointly optimize the alignment performance and a confidence score, OR optimize alignment performance and then find the score calculation scheme which produces the highest Spearman rank coefficient between the alignment score and the error of each alignment, over all highly-performing alignment architectures
  6. Collect real-world audio/MIDI alignment pairs and run the best-performing alignment architecture on them, manually annotate whether it was successful or not, and find the ROC-AUC score for the confidence measure

About

Parameter search for MIDI alignment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages