Skip to main content

Towards Musically Informed Evaluation of Piano Transcription Models

PyPI Package DOI

This repository provides a set of evaluation metrics designed for piano transcription evaluation. The metrics are musically informed, meaning they take into account the nuances of musical performance, such as dynamics, note onset, and duration, to offer more differentiated and musically relevant assessments of transcription quality. Note that these metrics are a work in progress and actively being developed/refined/extended. Expect future updates, and feel free to contribute or share feedback!

Setup

The easiest way to install the package is via:

pip install mpteval

Dependencies

  • Python 3.10+
  • Parangonar 3.2.0
  • Partitura 1.8.0

Metrics computation

The following code loads a reference and a predicted MIDI and computes how well the transcription preserves timing information in the performance:

import mpteval
import partitura as pt

from mpteval.metrics_feature.timing import timing_metrics_from_perf

ref_perf = pt.load_performance_midi(mpteval.REF_MID)
pred_perf = pt.load_performance_midi(mpteval.PRED_MID)

timing_metrics = timing_metrics_from_perf(ref_perf, pred_perf)

Demo notebooks

You can find more examples of how the metrics and related functionality can be used in notebooks_demo. Likewise, you can check out our related work on biases in transcription models and [evaluation of large scale transcribed datasets](TODO add link).

Citing

If you use our metrics in your research, please cite the relevant paper:

@inproceedings{hu2024towards,
    title = {{Towards Musically Informed Evaluation of Piano Transcription Models}},
    author = {Hu, Patricia and Mart\'ak, Luk\'a\v{s} Samuel and Cancino-Chac\'on, Carlos and Widmer, Gerhard},
    booktitle = {{Proceedings of the International Society for Music Information Retrieval Conference (ISMIR)}},
    year = {2024}
}

Acknowledgments

This work is supported by the European Research Council (ERC) under the EU’s Horizon 2020 research & innovation programme, grant agreement No. 10101937 ("Whither Music?").

Metadata

Release files for mpteval 1.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for mpteval 1.1.0
File Size Uploaded
mpteval-1.1.0.tar.gz 37.7 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for mpteval 1.1.0
File Interpreter ABI Platform
mpteval-1.1.0-py3-none-any.whl Python 3 none any Details

Total release size: 76.4 kB

Release files / mpteval-1.1.0.tar.gz

Download URL mpteval-1.1.0.tar.gz
Size 37.7 kB
Tags Source
SHA-256 checksum
How to use checksums
22972ab8ad61201fc803e743bc39120a9cc2ce3b752295a37dd397365ff47e24
BLAKE2b-256 checksum
How to use checksums
de719fef70d64da8fd7b7c508bc202b0393354d87da9a9156b915beb84c43673
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.14

Release files / mpteval-1.1.0-py3-none-any.whl

Download URL mpteval-1.1.0-py3-none-any.whl
Size 38.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
3d49f7d196c6fd4b129b11239a3963283220591ee1755f7186becb39d80ff777
BLAKE2b-256 checksum
How to use checksums
3e559f15b354b1aee57a31d9964965b9c346cd485f18a32383a78d38f0fd29e2
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/6.2.0 CPython/3.11.14

Release history Release notifications | RSS feed

This release

1.1.0 This release

2 release files

1.0.1

2 release files

0.1.4

2 release files

0.1.3

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page