Towards Human-in-the-Loop Onset Detection: A Transfer Learning Approach for Maracatu

António Sá Pinto
7/7/2025
cs.SDcs.AIcs.LG

No official code found. Best implementation: asapsmc/HIILOnsetDetection (1 star, GPL-3.0, last commit 2025-07-08).

Abstract

We explore transfer learning strategies for musical onset detection in the Afro-Brazilian Maracatu tradition, which features complex rhythmic patterns that challenge conventional models. We adapt two Temporal Convolutional Network architectures: one pre-trained for onset detection (intra-task) and another for beat tracking (inter-task). Using only 5-second annotated snippets per instrument, we fine-tune these models through layer-wise retraining strategies for five traditional percussion instruments. Our results demonstrate significant improvements over baseline performance, with F1 scores reaching up to 0.998 in the intra-task setting and improvements of over 50 percentage points in best-case scenarios. The cross-task adaptation proves particularly effective for time-keeping instruments, where onsets naturally align with beat positions. The optimal fine-tuning configuration varies by instrument, highlighting the importance of instrument-specific adaptation strategies. This approach addresses the challenges of underrepresented musical traditions, offering an efficient human-in-the-loop methodology that minimizes annotation effort while maximizing performance. Our findings contribute to more inclusive music information retrieval tools applicable beyond Western musical contexts.

View on arXivView PDF

Code Implementations(1)

GPL-3.0

Reproducibility code for the ISMIR 2025 paper "Towards Human-in-the-Loop Onset Detection: A Transfer Learning Approach for Maracatu"

10PythonJul 6, 20251 years agoGPL-3.0

Similar Papers

Cite this paper

@article{pinto2025towards,
  title  = {Towards Human-in-the-Loop Onset Detection: A Transfer Learning Approach for Maracatu},
  author = {António Sá Pinto},
  year   = {2025},
  eprint = {2507.04858},
  archivePrefix = {arXiv},
  url    = {http://arxiv.org/abs/2507.04858v1}
}

Add a badge to your README

Shows whether official code is linked for this paper.

Code of Paper badge
[![Code of Paper](https://codeofpaper.com/badge/2507.04858.svg)](https://codeofpaper.com/paper/2507.04858)

Discussion