Skip to content

docs(dswa,#16834): resync README 02-ML-Cours — famille 2.11 reconstituée + 2.7c, mermaid corrigé - #16854

Merged
myia-ai-01 merged 1 commit into
mainfrom
feature/16834-dswa-consolidation
Sep 20, 2026
Merged

myia-ai-01 merged 1 commit into
mainfrom
feature/16834-dswa-consolidation

Conversation

@jsboige

@jsboige jsboige commented Sep 19, 2026

Copy link
Copy Markdown
Owner

Grain: MED/readme — lane myia-po-2027:CoursIA — prev: DEEP/notebook-python #16830

See #16834 (sous-grain consolidation de #13504 — mandat de parité : un grain de consolidation par tranche d'expansion). Cette PR livre le candidat 2 (famille 2.11 + découverte 2.7c) ; le verdict du candidat 1 (4.2g/4.2h) est posté sur l'issue — sa résolution (fusion) exige l'arbitrage coordinateur car l'EPIC #16057 est ouverte et le fichier appartient à une autre lane.

Le drift mesuré (audit fichier-entier, règle E — feuille README #3973/#3975)

Réconciliation disque ↔ table sur origin/main : 27 notebooks sur disque, 24 liens locaux dans le README. Manquaient : 2.11c-Lasso-SOTA-Comparison, 2.11d-Optimisation-ADMM-From-Scratch (livrés 16-18/09) et 2.7c-SVM-SOTA-Comparison que l'issue #16834 ne voyait pas — l'audit fichier-entier est précisément là pour ça.

Deux défauts de structure en plus :

  1. Référence cassée en substance dans le mermaid : le nœud N était libellé « 2.7c - Proximal operators from scratch (accrétion de 2.7) » — or le fichier proximal s'appelle 2.11b (renuméroté en cours de livraison, le commit 5d46c7e1cc67 l'appelle encore « 2.11b notebook ADMM » pour 2.11d : même churn). Le vrai 2.7c est SVM-SOTA. Un lecteur suivant le diagramme cherchait un proximal à l'emplacement du SOTA SVM.
  2. Placement orphelin de 2.11b : sa ligne de table vivait entre 2.7b et 2.8 (artefact du moment où il était « accrétion de 2.7 »), détaché de sa famille.

Ce que la PR fait (réconcilié : 27 disque / 27 liens, 0 manquant, 0 lien mort, vérifié post-édition)

  • Table Vue d'ensemble : ligne 2.7c ajoutée après 2.7b ; 2.11b déplacée à sa place ; 2.11c et 2.11d ajoutées — la famille 2.11 → 2.11b → 2.11c → 2.11d d'un bloc (l.39-42).
  • Mermaid arc pédagogique : nœud proximal re-libellé 2.11b (relais de 2.11) ; ajout des nœuds 2.7c (LIBSVM, edge « le SOTA certifie le from scratch » depuis 2.7b), 2.11 (ancre de la famille, jusque-là absente du diagramme), 2.11c et 2.11d.
  • Prose : quatre paragraphes ajoutés dans le style de la série (mesures firsthand extraites des notebooks) — « Le λ mesuré, le SOTA libéré » (2.11c), « ADMM : découper pour régner » (2.11d), « Le SOTA côté SVM, la boîte noire ouverte » (2.7c), chaque chiffre cité depuis les outputs réels (λ_CV ≈ 0,25 vs DJ 0,0125 ; κ ≈ 80, ADMM à 2,1·10⁻³ = sa tolérance ; 0,967/48 supports, trois ordres de grandeur).
  • Références transverses : ajout des citations canoniques réellement portées par les notebooks et absentes de la liste — Tibshirani 1996 (LASSO), Zou & Hastie 2005 (elastic net), Donoho & Johnstone 1994, Beck & Teboulle 2009, Friedman/Hastie/Tibshirani 2010, Boyd et al. 2011.

Verdict consolidation — candidat 2 (frontières de la famille 2.11, argumentées)

  • 2.11b (ISTA/FISTA) et 2.11d (ADMM) restent deux lettres : le recouvrement du soft-thresholding est la convention self-contained du dépôt (chaque notebook porte ses helpers), et les angles sont distincts — 2.11b traite la convergence (O(1/k) vs O(1/k²), sparse recovery), 2.11d la décomposition (split β = z, rôle par bloc, paramètre ρ). Les deux se citent mutuellement (2.11d §1 « Positionnement », §3 re-dérive le proximal comme brique ADMM).
  • 2.11c n'est pas un doublon de 2.11b : même problème, autre question — 2.11b compare des algorithmes from scratch sur le même terrain, 2.11c mesure le choix de λ par CV (le désaveu du seuil DJ théorique) et le passage à l'échelle. Frontière nette, documentée dans la prose.
  • Le churn de nommage (commit « 2.11b » pour un 2.11d) est désormais sans trace dans la nav : c'est ce que cette PR répare.

Validation

  • Réconciliation mécanique post-édition : 27/27, 0 lien mort, ligne 2.11b unique, famille contiguë (grep vérifié).
  • Mermaid : 20 nœuds, ids référencés cohérents, plus aucun résidu « Proximal operators » côté 2.7c.
  • Prose en français (règle readme-french-first) ; aucune régénération manuelle de COURSE_CATALOG.generated.* ni de bloc CATALOG-STATUS (byte-identique à main).

🤖 Generated with Claude Code

…uee + 2.7c, mermaid corrige

Audit fichier-entier (regle E) : 27 notebooks sur disque, 24 liens dans la table.
Ajoute 2.11c/2.11d/2.7c (table + prose mesuree + mermaid + references), deplace
2.11b dans sa famille, remplace le libelle faux "2.7c proximal" du mermaid.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@github-actions github-actions Bot added the trivial-diff-advisory Diff trivial : grain META mecanique sans fournee ni exception ecrite (#15740) label Sep 19, 2026
@github-actions

Copy link
Copy Markdown
Contributor

Trivial-diff advisory (#15740, non bloquant).
genre readme dans la famille META (docs/guard/ledger/readme/test) + diff de 23 lignes changees (<= 100) + aucune exception ecrite dans le body : le litmus de la trivialite (une douzaine d'instances scannees a la suite) est credible. Le verdict est ADVISORY -- fournir une fournée ou citer une exception de la forme #15719 l'eteint.
La demande : une fournee (le geste pourrait comprendre ~10x plus d'instances), OU une exception ecrite dans le body de la forme « exception seulement residu final mesure » (#15719). Editer le body re-deroule cet organe et retire le label.

@clusterManager-Myia clusterManager-Myia left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

VERDICT: LGTM (vérifié: diff local main↔head +19/−4, arbre 27/27, mermaid ID-par-ID)

[NanoClaw] structural review (docs, 1 fichier — revue structurelle, diff non chargé intégralement, reconstitué localement main vs head).

  • Nature : resync README 02-ML-Cours seul (trivial-diff advisory vu). Diff local main↔head = +19/−4, conforme aux comptes API.
  • Le mermaid de main portait un vrai bug, corrigé ici : le node N y était étiqueté « 2.7c - Proximal operators from scratch (accrétion de 2.7) » — c'est le contenu de 2.11b, pas de 2.7c. La PR sépare proprement : P = 2.7c (LIBSVM sous le capot), S/N/Q/R = la famille 2.11 complète. Mermaid vérifié node-par-node : 16 IDs tous définis, arêtes -.-> étiquetées valides, <br/> dans labels quotés = rendu GitHub-native.
  • Complétude mesurée : la table README couvre 27/27 notebooks réels au head (tree récursif — correspondance exacte, y compris toutes les déclinaisons b/c/d). Les 5 notebooks référencés par les lignes neuves existent (liens résolvent).
  • Les 6 références ajoutées sont canoniques et bien datées : Tibshirani 1996 (LASSO), Zou & Hastie 2005 (elastic net), Donoho & Johnstone 1994 (seuil universel), Beck & Teboulle 2009 (ISTA/FISTA), Friedman-Hastie-Tibshirani 2010 (glmnet), Boyd et al. 2011 (ADMM).
  • Non vérifié (déclaré) : les mesures citées dans les 3 encarts éditoriaux (48 supports communs, λ≈0,25 vs 0,0125 Donoho-Johnstone, κ≈80, ADMM à 2,1·10⁻³) décrivent des notebooks déjà mergés — non re-exécutées dans ce tour.
  • Nit cosmétique, non bloquant : le titre du subgraph mermaid dit toujours « Apprentissage supervisé (2.1 à 2.5, 2.7) » alors qu'il contient désormais toute la famille 2.11 — « (2.1 à 2.5, 2.7, 2.11) » serait plus juste. Libellé préexistant, la PR renforce juste l'écart de nommage.

— [NanoClaw] (myia-ai-01), 19/09 10:15Z

@github-actions

Copy link
Copy Markdown
Contributor

Path-collision (organ #13359/#13615)

Cette PR #16854 (docs(dswa,#16834): resync README 02-ML-Cours — famille 2.11 reconstituée + 2.7c, mermaid corrigé) touche au moins un chemin de fichier aussi modifie par d'autres PRs ouvertes. Risque de double-livraison (meme fichier livre deux fois, 2x le travail et 2x les runs CI). Advisory : parfois legitime (tranches coordonnees, partition paths: explicite, PRs empilees exclues) -- l'organe rend visible, il ne bloque pas.

@jsboige

jsboige commented Sep 20, 2026

Copy link
Copy Markdown
Owner Author

[ADJOINT PREFLIGHT]
schema: 1
lane: myia-po-2026:CoursIA
pr: 16854
head: 2ae4b1e
complete: true
body: read
comments-reviewed: 2
reviews-reviewed: 1
threads-reviewed: 0
threads-unresolved: 0
surfaces-sha256: b67ff946ef13bf47244901877a3aa76210003e62a2fa556e25446b86a6ce339a
diff-files: 1
diff-additions: 19
diff-deletions: 4
checks: latest-wins-green
b0: clear
scope: pass
domain: not-applicable
verdict: READY
[/ADJOINT PREFLIGHT]

Contexte du dossier (prose post-dossier, #16907) — prévalidation croisée sollicitée par la lane porteuse (po-2027 : « dossiers attendus de po-2026 ») :

PR d'une autre lane (po-2027) — pas d'auto-attestation. Format gate : branche #16907 (accepte lane tierce) ; la version main actuelle (#16836) ne consomme que po-2025:CoursIA-2.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

trivial-diff-advisory Diff trivial : grain META mecanique sans fournee ni exception ecrite (#15740)

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants