feat(emotion): fit whole-mix V/A calibration on full 60-track corpus
#91 batch finished — all 60 famous tracks fetched + whole-mix analyzed. First honest baseline on the full corpus (was n=5 before): top-1 emotion hit : 22% (47% w/ overlap) V/A quadrant hit : 42% mean V/A error : 0.573 The center-compression hypothesis is confirmed at scale: 'playful' is the predicted top emotion for ~18 of 60 tracks (Fleetwood, Marvin, Coltrane, Avicii, Journey, Eminem...) because the distribution-weighted mean of the circumplex anchors collapses toward the warm-positive centre. Affine de-compression (gt ≈ a·pred + b, leave-one-out CV) learns exactly that bias and corrects it: valence: ×1.03 −0.25 (reads +0.25 too WARM — the playful pull) arousal: ×1.70 −0.39 (compressed ~1.7x — needs the most stretch) LOO V/A err 0.573 → 0.519, quad 42% → 50%. Modest but real & cross-validated. calibrate.py now writes per-mode files (calibration.whole-mix.json / calibration.stem.json) so the #92 whole-mix-vs-stem decision can compare both without one clobbering the other; calibration.json mirrors the freshest fit. Stem-aware batch (demucs, all 60) launched in background to settle #92 on the full corpus, not the n=5 that PLN rightly refused to conclude on.
Showing
armada/tide-table/calibration.json
0 → 100644
armada/tide-table/calibration.whole-mix.json
0 → 100644
Please
register
or
sign in
to comment