Le vocabulaire et le workflow
La grammaire en six mots
- Features (X) : les colonnes d'entrée — ce que le modèle observe ;
- Label (y) : la colonne à prédire — churn oui/non, prix, catégorie ;
- Entraînement : ajuster les paramètres pour prédire y depuis X ;
- Supervisé : on a des labels historiques (classification si y est une catégorie, régression si c'est un nombre) ;
- Non-supervisé : pas de labels — on cherche des structures (clusters, anomalies) ;
- Inférence : appliquer le modèle entraîné à de nouvelles données.
Le workflow immuable
données → split train/test → entraîner sur TRAIN → évaluer sur TEST → itérer → déployer
Pourquoi le split ? Le modèle sera utilisé sur des données qu'il n'a jamais vues. L'évaluer sur ses données d'entraînement, c'est noter un étudiant sur les exercices dont il a appris le corrigé par cœur : le score ne prédit rien de la prod. Le test set est sacré : on n'y touche qu'à la toute fin, une fois.
Les deux façons de se planter
- Overfitting (variance) : modèle trop flexible → par cœur sur train, nul sur test. Signature :
score(train) >> score(test); - Underfitting (biais) : modèle trop simple → mauvais partout. Signature :
score(train)déjà mauvais.
Le réflexe diagnostique : toujours regarder les deux scores. L'écart te dit quoi faire (plus de données/régularisation vs modèle plus riche).
Le leakage, encore lui
Au-delà de la fuite temporelle (module 4), le leakage prend des formes sournoises :
- normaliser les données avant le split (les stats du test fuient dans le train) — toujours fit le préprocesseur sur train seul ;
- une feature qui contient la réponse (« montant_remboursé » pour prédire la fraude…) ;
- des doublons présents des deux côtés du split.
Règle d'or : un score trop beau pour être vrai est trop beau pour être vrai. Cherche la fuite avant de fêter.
Pourquoi évaluer sur un test set jamais vu à l'entraînement ?