Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

systematic comparison of methods #89

Open
Laubeee opened this issue Jan 27, 2024 · 6 comments
Open

systematic comparison of methods #89

Laubeee opened this issue Jan 27, 2024 · 6 comments

Comments

@Laubeee
Copy link

Laubeee commented Jan 27, 2024

I would be interested in a more detailed analysis of how your method compares to pYIN. Would you be willing to run such a systematic comparison on a big dataset, such as the NSynth TESET set, and report on its accuracies? These could then even be further divided into different instrument families and pitches. If it turns out your method is significantly superior for some instrument families or pitch ranges, that would certainly raise interest.
Another interesting indicator could be computation time for the benchmark for each method.

@sevagh
Copy link
Owner

sevagh commented Feb 5, 2024

By my method, do you mean PMPM/Probablistic McLeod Pitch Method?

@Laubeee
Copy link
Author

Laubeee commented Feb 6, 2024

yes, as you mention it in the README

@sevagh
Copy link
Owner

sevagh commented Feb 7, 2024

It's a good idea. I think some scripts around the fetching, loading, running pitch tracking, and evaluating the quality of the results on the NSynth data would be a good addition to the repo (and maybe even incorporating modern pitch tracking methods - CREPE is the end of my memory but there are a lot of new ones (like PESTO https://zenodo.org/records/10265343)

@Laubeee
Copy link
Author

Laubeee commented Feb 12, 2024

I think CREPE is still one of the best estimators. There are some recent (SSL) works on general music representations that perform better in some cases when fine-tuned for pitch e.g. MERT, but they also have disadvantages (based on Transformer is likely to result in higher latency for real-time applications)
See also this benchmark where NSynth is one of the tasks

@Laubeee
Copy link
Author

Laubeee commented Feb 12, 2024

btw, I could provide python code for evaluating pyin (taken from librosa) on the NSynth-test split, if you are interested. It requires to manually download the data to a local directory though, but that should not be a big issue.

@sevagh
Copy link
Owner

sevagh commented Feb 15, 2024

As long as it's a configurable or well-known path e.g. ~/NSYNTH_DATA, that makes sense to me.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants