External Learning & Competitions
[2024][Basic][P3] Music Genre Classification
I revisited the ten-epoch run and improved a local baseline with rhythmic and spectral features.
- Platform
- Kaggle
- Period
- 2024-08-11–2024-08-27
- Host
- sw.baek_00
- Metric
- Accuracy
- Model rule
- Design and train the model directly

Earlier result
The notebook retained ten epochs with a final train loss of 1.4228 and train accuracy of 0.5088. I compared acoustic summaries before committing to another end-to-end neural model.
Feature set
MFCC and delta features describe timbral change, chroma summarizes pitch-class energy, and centroid, bandwidth, and rolloff summarize the spectrum. I standardized the features and selected the RBF-SVM C value only inside training folds.
Local result
The 80/20 stratified holdout produced 0.8142 accuracy, 0.8120 balanced accuracy, and 0.8108 macro-F1. The simple baseline macro-F1 was 0.0188.
Track and artist group metadata was unavailable, so artist-conditioned separation was not possible. These are local split metrics rather than a Kaggle score or rank.
What I changed for the rerun
I compared the original notebook result with a local holdout run. I used MFCC, delta, chroma and spectral summaries + StandardScaler + RBF-SVM(C=3) under 80/20 stratified holdout plus five-fold training-only C selection; seed 42.
- Earlier run
- 10 epochs; final train loss 1.4227865277; final train accuracy 0.5087527352
- Simple baseline
- accuracy 0.1038; balanced accuracy 0.1000; macro-F1 0.0188
- Reworked model
- accuracy 0.8142; balanced accuracy 0.8120; macro-F1 0.8108
Track or artist group metadata was unavailable, so artist-conditioned splitting was not possible. The result is a local random stratified holdout, not a Kaggle score.
Open the rerun scripts and sanitized notebooks
These numbers come from my documented local split, not from the Kaggle leaderboard. I did not reproduce a signed-in submission history or rank.