Skip to content

[GenAI/Audio] 04-16 SheetSage2 : les statistiques de session ne distinguent pas notes exactes et classes de hauteur #15907

Description

@jsboige

Contexte

Constaté en corrigeant les quatre écarts de traçabilité relevés par la review de la
PR #15902 (04-16-SheetSage2-Audio-To-Score.ipynb). Ce cinquième point n'est pas
dans les quatre : il est hors du périmètre de ce fix, donc reporté ici sciemment.

Le fait

Le notebook établit — c'est son résultat central — que le modèle transcrit avec
100 % des classes de hauteur correctes mais un décalage systématique de +12
demi-tons
. Deux nombres, donc, et deux seulement :

Cellule Ce qu'elle imprime
20 (l.32 et l.35) NOTES EXACTES : 0/8 (0.0%) et CLASSES DE HAUTEUR : source [0, 4, 7, 9] | transcrit [0, 4, 7, 9]
35 (l.12) Precision melodique 0.0% (0/8) vs verite-terrain

La cellule 20 distingue proprement les deux grandeurs. La cellule 35 — les
statistiques de session, c'est-à-dire le bloc qu'un lecteur pressé lit en premier —
n'en publie qu'une seule, sous le libellé Precision melodique. Ce libellé n'annonce
pas qu'il s'agit de la précision en hauteur absolue, et il porte donc le chiffre le
moins informatif des deux : 0,0 %.

Conséquence mesurable : pour un notebook dont la thèse est précisément que la métrique
usuelle (classes de hauteur) est aveugle à l'octave, le résumé de session affiche
0,0 % sans le 100 % qui l'explique — soit exactement le malentendu que le notebook
existe pour dissiper. Un lecteur qui ne lit que la cellule 35 en conclut que la
transcription a échoué.

Ce n'est pas une erreur de calcul

precision = justes / n (cellule 20, l.30) compare des hauteurs MIDI absolues
(cellule 20, l.18-35) : 0,0 % est exact, et c'est bien 0/8 notes identiques au
demi-ton près. Le défaut est de communication : le résumé publie une grandeur sans
son complément, sous un libellé qui ne dit pas laquelle.

Acceptance

  • La cellule 35 publie les deux grandeurs, avec des libellés qui les distinguent
    explicitement (notes exactes vs classes de hauteur), sur le modèle de la
    cellule 20
  • Le libellé Precision melodique disparaît, ou devient non ambigu (il ne doit plus
    pouvoir se lire comme « précision du modèle »)
  • Re-exécution complète du notebook après la modification de source (C.2), sorties
    committées, execution_count 1..13 contigu, 0 octet CR
  • La table de conclusion (cellule 36) reste cohérente avec la nouvelle ligne

Périmètre

Un seul notebook, une seule cellule (35), plus la re-exécution que la modification
impose. Aucun changement de code de calcul : precision et justes sont conservés
tels quels, seule leur présentation change.

Contexte de la PR qui a relevé le point

Activity

  1. jsboige commented on Sep 13, 2026

    @jsboige
    OwnerAuthor

    [CLAIMED] #15907 — myia-po-2023:CoursIA 2026-09-13T09:45Z

    Fix empilé sur le tip de feat/15597-sheetsage2 (PR #15902 OPEN/MERGEABLE — le notebook 04-16 n'est pas encore sur main) : cellule 35 publie les deux grandeurs (notes exactes vs classes de hauteur), libellé Precision melodique levé, re-exec complète C.2, cohérence cellule 36 vérifiée. Aucun changement de code de calcul.

    Grain: MED/notebook-python — lane myia-po-2023:CoursIA — prev: MED/guard #15930

  2. jsboige commented on Sep 13, 2026

    @jsboige
    OwnerAuthor

    [DELIVERED] #15907 — myia-po-2023:CoursIA 2026-09-13T08:00Z

    PR #15935 (OPEN, MERGEABLE) — fix/15907-sheetsage2-session-stats, empilee sur le tip
    de feat/15597-sheetsage2 (PR #15902 OPEN : le notebook 04-16 n'est pas encore sur main).

    Cellule 35 : publie les deux grandeurs avec les libelles de la cellule de comparaison
    (Notes exactes en hauteur MIDI absolue, Classes de hauteur independantes de l'octave).
    Libelle Precision melodique : grep -c = 0. Re-execution complete (C.2) :
    execution_count 1..13 contigu, 0 erreur, 0 octet CR, ratchets source/sortie et
    papermill verts, D5 sans nouveau finding. Cellule 36 coherente. Aucun changement de code de
    calcul.

    Acceptance : les 4 cases cochees, preuves dans le body de la PR.

    Declare : le registre de transcription est depend de la carte — meme machine, meme
    env, meme entree : RTX 3090 -> 8/8 notes exactes, RTX 3080 Ti Laptop -> 0/8 +12.
    Hors perimetre de #15907, reporte dans #15934. Les sorties commitees sont celles du
    second GPU (celles qui reproduisent la mesure d'origine deja presente dans la prose) ; la
    these du notebook (metrique de classes de hauteur aveugle a l'octave) tient dans les deux cas.

    Closes #15907 est declare dans le body de la PR. Base non-defaut : GitHub ne fermera pas
    l'issue au merge de la pile — la fermeture tombera quand #15902 puis celle-ci atteindront
    main.

  3. added a commit that references this issue on Sep 16, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions