Skip to content

Lab5 Track1-LangChain : l'etape Machine Learning s'entraine sur 4 echantillons et teste sur 2 (precision 1.00 non informative) #19624

Description

@jsboige

Part of #17387

Le constat mesuré

Day3-Data-Agents/Labs/Lab4-DataWrangling/transactions.csv porte 6 lignes de données (wc -l = 7, en-tête compris). Le Lab5-Viz-ML charge ce fichier et construit dessus sa première étape de Machine Learning :

  • la cellule de préparation affiche Donnees preparees : 4 echantillons d'entrainement, 2 de test ;
  • la cellule d'entraînement affiche Précision du modèle : 1.00.

Une précision de 1.00 sur deux exemples de test ne mesure rien : elle dit qu'un modèle à peine contraint a bien classé les deux points qu'on lui a laissés. L'étape « Machine Learning » du Lab 5 est donc, en l'état, une démonstration dégénérée — le moteur (régression logistique scikit-learn) y est équivalent à une baseline triviale.

C'est le critère Prong B de sota-not-workaround.md : « Problème dégénéré — moteur démontré sur un cas trivial où le SOTA équivaut à une baseline ».

Ce qui a déjà été fait

La PR d'audit du Lab 5 (#17387) a corrigé la cellule d'interprétation, qui proposait des seuils de lecture (> 0,7 / 0,4-0,7 / < 0,4) sans lire la sortie committée : elle lit désormais la précision réellement mesurée et déclare explicitement que sur 6 lignes elle ne mesure rien. Le notebook est donc honnête ; il n'est pas pour autant démonstratif.

Ce qui reste à trancher

Trois voies, à arbitrer :

  1. Élargir transactions.csv — c'est la voie qui rend l'étape réellement démonstrative. Le fichier est un artefact committé (il n'est pas généré à l'exécution), donc modifiable. À vérifier d'abord : le Lab 4 ne dépend-il pas de cette petite taille pour ses propres exercices de nettoyage (la ré-application du nettoyage dans le Lab 5, cellules 1-2, suppose des valeurs manquantes et des types à corriger) ?
  2. Assumer la taille et déplacer l'ambition — garder la démonstration comme un aperçu du geste (train_test_split, fit, predict, accuracy_score) sans prétendre à un résultat, le vrai travail supervisé restant aux labs suivants.
  3. Basculer sur un jeu plus riche pour la seule étape ML (un sklearn.datasets classique), le transactions.csv restant le fil des étapes data.

Portée

Concerne le Lab 5 du Track 1 (LangChain) et, par le fichier, le Lab 4 qui le produit. Hors périmètre de l'audit de structure en cours sur ces carnets.

Activity

  1. added a commit that references this issue on Oct 7, 2026
  2. jsboige commented on Oct 7, 2026

    @jsboige
    OwnerAuthor

    [CLAIMED] lane myia-po-2026:CoursIA -- paths: MyIA.AI.Notebooks/ML/DataScienceWithAgents/Track1-LangChain/Day3-Data-Agents/Labs/Lab5-Viz-ML/**

    Arbitrage retenu (voie 3 du body) : basculer l'etape ML sur un jeu sklearn riche, en laissant transactions.csv comme fil des etapes data. Motif mesure : le CSV porte sa salete par construction (valeur prix_unitaire manquante, quantite manquante, date quotee '2023-10-04') -- c'est le materiel d'exercice du Lab 4 ; l'elargir (voie 1) detruirait cet exercice. La voie 3 rend l'etape ML demonstrative sans toucher au producteur.

  3. jsboige commented on Oct 7, 2026

    @jsboige
    OwnerAuthor

    [DELIVERED] lane myia-po-2026:CoursIA — PR #19672

    Voie 3 de l'issue, mise en oeuvre : transactions.csv reste le fil des étapes data (nettoyage, visualisations, Exercice 2) et la seule étape ML bascule sur le jeu wine de scikit-learn.

    Mesure avant / après (sorties réellement committées) :

    avant après
    Échantillons (entraînement / test) 4 / 2 124 / 54
    Précision du modèle 1.00 0.981
    Baseline majoritaire absente 0.389
    Écart au-dessus de la baseline non mesuré +0.593

    Deux ajouts que la bascule seule n'aurait pas donnés : la comparaison à la baseline majoritaire (sans elle, une précision ne dit pas si le modèle apporte quelque chose) et une standardisation en amont du classifieur — les 13 variables ont des échelles incomparables, et un ajustement sans standardisation laissait un avertissement de convergence dans la sortie committée.

    Les Exercices 1 (partie binaire) et 4 sont ré-ancrés sur le jeu riche : une courbe ROC tracée sur 2 points de test aurait reconduit le même défaut. Le CSV du Lab 4 n'a pas été élargi — sa saleté est le matériel d'exercice du Lab 4.

    La fermeture de l'issue revient au coordinateur ou à l'adjoint.

  4. added a commit that references this issue on Oct 7, 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

    No labels
    No labels

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions