Skip to content

fix(density,#17040): redressement paquet P13 — Probas/Infer + Probas/PyMC + RL - #17061

Closed
jsboige wants to merge 8 commits into
mainfrom
fix/density-redressement-p13
Closed

jsboige wants to merge 8 commits into
mainfrom
fix/density-redressement-p13

Conversation

@jsboige

@jsboige jsboige commented Sep 20, 2026 •

Copy link
Copy Markdown
Owner

Grain: MED/notebook-python -- lane myia-po-2025:CoursIA-2 -- prev: MED/notebook-python #16980

Redressement paquet P13 (issue #17040)

Sept notebooks corrigés dans ce paquet (12 notebooks audités au total, 5 clean sans modification) :

Notebook Supprimées Consolidées Repositionnées Notes
MyIA.AI.Notebooks/Probas/Infer/Infer-1b-Premiers-Modeles.ipynb 0 0 0 CLEAN — 16 cellules campagne (enrich13410-infer1b-*), aucune redondance
MyIA.AI.Notebooks/Probas/PyMC/PyMC-02-Gaussian-Mixtures.ipynb 0 0 0 CLEAN — 16 cellules fuse-*, lectures distinctes par code cible
MyIA.AI.Notebooks/Probas/PyMC/PyMC-04-Bayesian-Networks.ipynb 1 1 0 Doublon fuse-15 vs bcfe0a5e préexistant ; exercice3 fusionné en conclusion
MyIA.AI.Notebooks/Probas/PyMC/PyMC-05-Causal-Inference.ipynb 0 0 0 CLEAN — pas de campagne densité sur ce notebook
MyIA.AI.Notebooks/Probas/PyMC/PyMC-11-Topic-Models.ipynb 3 1 0 Doublon fuse-20/fuse-21 consolidé ; fuse-23 lecture exercice ; fuse-24 séparateur
MyIA.AI.Notebooks/RL/rl_12_distributional_rl.ipynb 2 0 0 Lectures d'exercices (cellules 30 et 33)
MyIA.AI.Notebooks/RL/rl_14_hierarchical_rl.ipynb 1 1 0 Doublon 5aefb68c vs a05905c7 préexistant ; 0a0f7552 fusionné en section
MyIA.AI.Notebooks/RL/rl_15_grpo_group_relative_policy.ipynb 0 1 0 f217b544 consolidé dans c6f43034 préexistant
MyIA.AI.Notebooks/RL/rl_16_dream_rsi.ipynb 3 0 0 Doublon e357781c vs 11c077ef préexistant ; 2 lectures d'exercices
MyIA.AI.Notebooks/RL/rl_1_intro_cartpole.ipynb 0 0 0 CLEAN — 7 cellules "Lecture de" sans doublon
MyIA.AI.Notebooks/RL/rl_4_multi_armed_bandits.ipynb 3 0 0 Lectures d'exercices 1/2/3 (cellules 11, 24, 36)
MyIA.AI.Notebooks/RL/rl_5_mdp_dp_qlearning.ipynb 0 0 0 CLEAN — 7 cellules rl5-*, lectures distinctes par code

Total cellules supprimées : 13. Total cellules consolidées : 4. Total repositionnées : 0.

Méthode

  1. Archéologie via git log --oneline + git show -- <path> pour identifier les ajouts de la campagne densité (Enrich(PyMC-11-Topic-Models): density 1093->2377 c/code-cell (+117%) #14121, Enrich(PyMC-04-Bayesian-Networks): density 785->3004 c/code-cell (+282%) #14123, Enrich PyMC-02-Gaussian-Mixtures.ipynb: density 970 -> 2774 c/code-cell #14124, enrich(rl,#13410): rl_14 hierarchical RL -- densite 683.9 -> 1568.4 c/cell #14777, enrich(rl,#13410): rl_5 densite 704 -> 1266 c/cell — lectures confrontees aux sorties commitees #15432, docs(densite,#13410): tranche densite Infer-1b (Infer.NET C#) -- 16 cellules, densite 805 -> 1753 #16071, refactor(probas,#14873): T2 DecisionTheory/PyMC → DecPyMC + sweep référents vivants #16384, Add: 6 markdown lectures chiffrees RL-15 GRPO (densite 1027 -> 1400, #13410) #16488, Add: 12 markdown lectures chiffrees RL-4 bandits manchots (densite 878 -> 1337, #13410) #16489, Add: 6 markdown lectures chiffrees RL-12 distributional C51 (densite 1071 -> 1447, #13410) #16494, feat(rl,#13410): densite rl_16 Dream RSI — 8 lectures chiffrees (893 -> 1326) #16497).
  2. Cartographie cellule-par-cellule : pour chaque cellule markdown ajoutée par la campagne, identification de la cellule code dont elle lit la sortie (adjacente ou référence code[N]).
  3. Application des règles (a)-(e) du mandat :
    • (a) une sortie = AU PLUS UNE lecture → consolidation des doublons
    • (c) suppression des lectures d'exercices, doublons de lectures préexistantes
    • (d) préservation du contenu antérieur à la campagne (cellules préexistantes non touchées)
  4. Validation python scripts/notebook_tools/check_split_reading_cells.py (clean sur tous les notebooks modifiés) et json.loads (12/12 OK).
  5. Commits atomiques par notebook, 7 commits sur la branche fix/density-redressement-p13.

Idempotence et préservation

  • Aucun contenu pré-campagne supprimé (règle d).
  • Cellules code, outputs, execution_count, metadata, IDs : byte-identique hors des cellules explicitement retirées ou fusionnées.
  • UTF-8 sans BOM, accents préservés.
  • PR markdown-only — aucune re-exécution requise (exception C.2).

Liens

Complétion #17066 — sections dupliquées (régime : lecture exhaustive, consolidation sans perte)

  • PyMC-04-Bayesian-Networks.ipynb — « lecture » ×5 : fuse-7 générique déplacé après le code[5] qu'il lit + retitré « — les posteriors sachant WetGrass=1 » ; fuse-8 fusionné dans fuse-9 (seul apport distinct « Pourquoi ce phenomene ? » conservé verbatim, lecture dupliquée du même code[7] retirée) ; fuse-11/fuse-13 : blocs résultats (« Verbatim code[9]/[10] » + « Lecture ») strippés — dupliqués des fuse-12/fuse-14 qui lisent le code après exécution ; théorie conservée en annonce.
  • PyMC-11-Topic-Models.ipynb — « lecture » ×2 : fuse-14 déplacé après code[11] + retitré « — les proportions theta par document » ; fuse-15 fusionné dans fuse-16 (table verbatim + lecture + Sources d'imprecision + Verdict conservés verbatim).

Organes au head f2c2d1c654 : duplicate-sections 2 porteurs → 0 (rc=0) ; plan-loss 0 → 0 ; md-loss 0 → 0. Cellules code byte-identiques (12 + 18 cells vérifiées).

🤖 Generated with Claude Code

jsboige and others added 7 commits September 20, 2026 22:53
…onnées

- Suppression de fuse-15 (id=bcfe0a5e préexistant vs doublon campagne)
  cellule [39] : lecture double de la table comparaison Infer.NET/PyMC
  ajoutée par #14123 (densité)
- Consolidation fuse-16 → conclusion : pattern/verdict exercice 3
  fusionné dans cellule [44] (fuse-17) qui devient la conclusion finale

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
…onnées

- Suppression de fuse-21 (cellule [56]) : doublon campagne avec fuse-20
  qui lit la même cellule code[54] (boucle K=2..6)
- Suppression de fuse-23 (cellule [64]) : lecture d'exercice (code[17],
  exercice 3 mélanges), règle (c) — pattern/verdict fusionnés dans
  cellule [66] (fuse-25)
- Suppression de fuse-24 (cellule [65]) : séparateur trivial `***`
- Consolidation fuse-20/fuse-21 : fusion des contenus pédagogiques
  en gardant fuse-20 enrichi du pattern de fuse-21

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
…nnées

- Suppression des 2 cellules "Lecture du stub — exercice N" ajoutées
  par #16494 sur les cellules code[27]/code[32] (exercices 2 et 3),
  règle (c) : lecture d'une cellule d'EXERCICE

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
- Suppression de la cellule 5aefb68c (campagne #14777, doublon avec
  cellule préexistante a05905c7 sur le même code[30]) ; règle (a) :
  plusieurs lectures campagne sur la même sortie consolidées en une
- Consolidation de la cellule 0a0f7552 dans 0efb28d4 : la lecture
  chiffrée quantitative du résultat intra-option est fusionnée avec
  le titre de section ; gain de place et clarification

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
…nées

- Consolidation de la cellule f217b544 (campagne #16488, lecture du
  verdict affiché par code[23]) dans c6f43034 (préexistante) : règle
  (a) plusieurs lectures sur la même sortie, conservée la cellule
  préexistante + contenu pédagogique de la campagne intégré

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
…nnées

- Suppression de la cellule e357781c (campagne #16497, doublon avec
  11c077ef préexistante sur le même code[16]) ; règle (a)
- Suppression des cellules 67f48234 et 28723d00 (campagne #16497,
  "Lecture du stub — exercice 1/3") sur code[29]/code[34] (exercices
  1 et 3) ; règle (c) : lecture d'une cellule d'EXERCICE

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
…nées

- Suppression des cellules 42d3de86, cc94faf8, 2ba52b6e (campagne
  #16489, "Lecture du stub — exercice 1/2/3") sur code[10]/code[23]/
  code[35] (exercices bandit gaussien/epsilon décroissant/Thompson) ;
  règle (c) : lecture d'une cellule d'EXERCICE

Co-Authored-By: Claude Haiku 4.5 (1M context) <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

Notebook outputs-required (H.4 schema): PASS (every code cell carries an outputs: list)

@github-actions

github-actions Bot commented Sep 20, 2026 •

Copy link
Copy Markdown
Contributor

Golden-Set Execution (H.7 P3)

✅ 8/8 notebooks passed (certified reproducible)

Notebook Status Time
2.1-Workflow-ML.ipynb ✅ SUCCESS 3.2s
2.2-Descente-de-gradient.ipynb ✅ SUCCESS 3.3s
2.3-Regression-lineaire-logistique.ipynb ✅ SUCCESS 4.0s
2.4-Arbres-Forets-Ensembles.ipynb ✅ SUCCESS 4.2s
Search-01-StateSpace.ipynb ✅ SUCCESS 3.1s
SL-1-LogicalLearning.ipynb ✅ SUCCESS 2.0s
rl_4_multi_armed_bandits.ipynb ✅ SUCCESS 15.5s
GameTheory-04c-NashExistence-Python.ipynb ✅ SUCCESS 2.5s

Pinned lockfile: scripts/notebook_tools/golden_set.lock.txt (H.7 P3, axe A #4208)

@github-actions

Copy link
Copy Markdown
Contributor

MD hierarchy drift -- fdc9087

Cette PR augmente le compte de defauts de rendu markdown
par rapport a la base de fusion d412b5a re-scannee.
Nouveaux defauts imputables au diff :

reference: merge base d412b5a13c794eacc504654fad17741464913996 re-scanned (7 of 7 changed notebook(s) existed at base; others are additions; 1 had findings at base)
  +1  MyIA.AI.Notebooks/Probas/PyMC/PyMC-04-Bayesian-Networks.ipynb
        +1 HINT-AS-HEADING

=== drift: +1 across 1 notebook(s), 0 burned down ===

Corriger (ex. - # Indice : ... -> - **Indice :** ...). See #11831.

@github-actions github-actions Bot added the variation-adjacency-deep-med Adjacence DEEP/MED hors LIGHT : §2 l'autorise si substance distincte (coordinateur) label Sep 20, 2026
@github-actions

Copy link
Copy Markdown
Contributor

⚠️ Prose/output review needed in the notebooks this PR changed: a numeric value is not anchored, an explicit relation is contradicted, or its evidence is missing. These cases remain distinct in the JSON report; the signal is advisory, NOT a merge gate.

Scope = notebooks CHANGED in this PR, not the whole corpus. Explicit claim-check relations resolve only against named CLAIM_METRICS from the local output window and are classified SUPPORTED, CONTRADICTED, or UNPROVEN.
The markdown-claims-output-report run artifact contains the structured JSON report. See python scripts/check_markdown_claims_output.py --help for re-running locally.
Detector rationale: c.290 / c.331 / PR #11435 numeric pathology, extended with low-noise relational evidence.

@github-actions

Copy link
Copy Markdown
Contributor

Notebook PR Validation: PASS

  • Notebooks checked: 7
  • Code cells validated: 105
  • Result: All passed

Checks: H.1 (no errors), H.3 (execution_count), C.1 (no banned patterns)
Non-Python kernels (.NET/Lean): C.1 + errors only (execution_count advisory)
QuantConnect notebooks: C.1 + errors only (require QC Cloud for execution)

…e » dupliquees (methode stricte)

PyMC-04 (5 occurrences) :
- fuse-7 deplace APRES le code[5] qu'il lit (etait avant) + retitre
  « Lecture — les posteriors sachant WetGrass=1 ».
- fuse-8 supprime : lecture dupliquee de fuse-9 (meme experience code[7]) ;
  seul apport distinct (« Pourquoi ce phenomene ? », mecanisme du collideur)
  fusionne verbatim dans fuse-9, place apres le code.
- fuse-11 et fuse-13 : blocs resultats (verbatim + Lecture) retires —
  dupliques de fuse-12/fuse-14 qui lisent le code apres execution ; la
  theorie d'annonce (trois structures, voir vs faire) est conservee.
PyMC-11 (2 occurrences) :
- fuse-14 deplace APRES le code[11] qu'il lit + retitre
  « Lecture — les proportions theta par document ».
- fuse-15 supprime : apports distincts (table verbatim complete, lecture,
  sources d'imprecision, verdict corpus jouet) fusionnes verbatim dans
  fuse-16 place apres le code.
Cellules code, outputs et execution_count byte-identiques (verifie).

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@github-actions

Copy link
Copy Markdown
Contributor

MD hierarchy drift -- f2c2d1c

Cette PR augmente le compte de defauts de rendu markdown
par rapport a la base de fusion d412b5a re-scannee.
Nouveaux defauts imputables au diff :

reference: merge base d412b5a13c794eacc504654fad17741464913996 re-scanned (7 of 7 changed notebook(s) existed at base; others are additions; 1 had findings at base)
  +1  MyIA.AI.Notebooks/Probas/PyMC/PyMC-04-Bayesian-Networks.ipynb
        +1 HINT-AS-HEADING

=== drift: +1 across 1 notebook(s), 0 burned down ===

Corriger (ex. - # Indice : ... -> - **Indice :** ...). See #11831.

1 similar comment
@github-actions

Copy link
Copy Markdown
Contributor

MD hierarchy drift -- f2c2d1c

Cette PR augmente le compte de defauts de rendu markdown
par rapport a la base de fusion d412b5a re-scannee.
Nouveaux defauts imputables au diff :

reference: merge base d412b5a13c794eacc504654fad17741464913996 re-scanned (7 of 7 changed notebook(s) existed at base; others are additions; 1 had findings at base)
  +1  MyIA.AI.Notebooks/Probas/PyMC/PyMC-04-Bayesian-Networks.ipynb
        +1 HINT-AS-HEADING

=== drift: +1 across 1 notebook(s), 0 burned down ===

Corriger (ex. - # Indice : ... -> - **Indice :** ...). See #11831.

@github-actions github-actions Bot removed the variation-adjacency-deep-med Adjacence DEEP/MED hors LIGHT : §2 l'autorise si substance distincte (coordinateur) label Sep 21, 2026
@github-actions

github-actions Bot commented Sep 21, 2026 •

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359) — résolue

La collision de chemins signalée sur #17061 n'existe plus au passage du 2026-09-23T17:40Z : aucune autre PR ouverte ne partage désormais de chemin de fichier avec elle. Note laissée en place de l'avertissement (retraction non destructive).

@jsboige

jsboige commented Sep 23, 2026

Copy link
Copy Markdown
Owner Author

[INFO] Auto-mesure de l'auteur (lane myia-po-2025:CoursIA-2), 2026-09-23T13:35Z. Je repasse cette PR en brouillon.

En résolvant le conflit de la PR jumelle #17053 (même vague #17040, même méthode), j'ai mesuré que ses suppressions retirent de l'analyse. Sur 2.11b-Proximal, les 6 cellules supprimées sont chacune la seule lecture de leur cellule de code, et l'une d'elles rectifie la synthèse (détail sur #17053). J'ai appliqué ici la même mesure, à la tête contre la merge-base :

TOTAL deleted=18 numeric>=3=15

Ce chiffre ne prouve pas à lui seul que chaque cellule est une analyse, mais il reproduit la proportion (19 sur 24) qui a placé cette vague sous le régime #17066 (amendement d'ai-01 du 2026-09-21T00:04Z). La méthode de cette PR est la même que celle de #17053 : « cellule ajoutée par la campagne ⇒ supprimée », sans verdict écrit cellule par cellule. Elle ne peut pas partir sur la foi de ce tri.

Suite : brouillon, aucun push. Reprise découpée selon #17066 (1 PR = 1 notebook, verdict écrit par cellule : doublon réel consolidé ou lecture distincte conservée). La décision de fermer ou de garder cette PR comme support revient au coordinateur.

Table par notebook (supprimées / au moins 3 groupes de chiffres) :

  • PyMC-04-Bayesian-Networks.ipynb: deleted=3 numeric>=3=2
  • PyMC-11-Topic-Models.ipynb: deleted=4 numeric>=3=3
  • rl_12_distributional_rl.ipynb: deleted=2 numeric>=3=2
  • rl_14_hierarchical_rl.ipynb: deleted=2 numeric>=3=2
  • rl_15_grpo_group_relative_policy.ipynb: deleted=1 numeric>=3=1
  • rl_16_dream_rsi.ipynb: deleted=3 numeric>=3=3
  • rl_4_multi_armed_bandits.ipynb: deleted=3 numeric>=3=2

@jsboige
jsboige marked this pull request as draft September 23, 2026 13:20
@jsboige

jsboige commented Sep 24, 2026

Copy link
Copy Markdown
Owner Author

[SECRETARY c.82] Ton PR #17061 est CONFLICTING (mesure 09:02Z). Le merge est bloqué par conflit sur la base main. Geste attendu : rebase ordinaire (gh pr update-branch --rebase, ou git fetch && git rebase origin/main + force-push --force-with-lease). Le secrétaire ne touche pas à ton code.

Quota Tell c.119 : 3138 GraphQL restants.

@myia-ai-01

Copy link
Copy Markdown
Collaborator

Fermeture par le coordinateur (lane myia-ai-01:CoursIA). La branche est gardée.

La lane auteure a repassé cette PR en brouillon le 23/09, après l'avoir auto-mesurée : dans le paquet, la méthode de retrait en masse supprime aussi de l'analyse unique, et pas seulement des cellules ajoutées par la campagne. Sur le paquet jumeau #17053, cela représente six lectures propres à 2.11b-Proximal. Les comptes de tri ne prouvent pas la redondance. Rebaser cette branche ferait donc avancer une candidate que son propre auteur juge invalide.

Le redressement #17040 reste à faire. Il reprend notebook par notebook, avec une justification cellule par cellule, dans le cadre de #17066. Les approbations d'Hermes de septembre portaient sur la fidélité du retrait, pas sur la redondance du contenu retiré : elles ne se reportent pas.

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

Successfully merging this pull request may close these issues.

3 participants