An improved version of the Harmony Transformer. We evaluated the new model in terms of automatic chord recognition for symbolic music. For more details, please refer to "Attend to Chords: Improving Harmonic Analysis of Symbolic Music Using Transformer-Based Models" (TISMIR 2021).
BPS_FH_preprocessing.py
: preprocessing of the BPS-FH datasetchord_recognition_models.py
: implementations of the three chord recognition models: the Harmony Transformer (HT/HTv2), the Bi-directional Transformer for Chord Recognition (BTC), and the convolutional recurrent neural network (CRNN)chord_symbol_recognition.py
: train the chord recognition models using the 24 maj-min chord representationsfunctional_harmony_recognition.py
: train the chord recognition models using the chord representations of Roman numeral analysis
- python >= 3.6.4
- tensorflow >= 1.8.0
- numpy >= 1.16.2
- xlrd >= 1.1.0
- scipy >= 1.5.4