Définition
Fuite de Données (Data Leakage)
Erreur survenant lorsque des informations de l'ensemble de test se retrouvent par erreur dans l'ensemble d'entraînement.
Publié le 4 mars 2026par ZoneIA
Une fuite de données se produit quand le modèle « voit » indirectement des informations qui ne devraient être disponibles qu’au moment de l’évaluation ou en production. Cela fausse les métriques (accuracy, AUC, etc.) en donnant une performance artificiellement élevée, puis le modèle déçoit sur de nouvelles données.
Comment cela arrive
Les causes fréquentes sont liées au pipeline de préparation :
- Prétraitements calculés sur tout le dataset avant la séparation (normalisation, PCA, imputation), puis appliqués au train et au test.
- Feature engineering utilisant le futur : variables dérivées de données postérieures à la prédiction (ex. statut « résilié » pour prédire la résiliation).
- Doublons ou entités partagées entre train et test (même utilisateur, même session), surtout avec des splits aléatoires.
- Validation mal configurée : fuite entre folds en cross-validation, ou réglage d’hyperparamètres en regardant le test.
À quoi ça sert de l’éviter
Éviter la fuite garantit une évaluation réaliste, une meilleure généralisation et des décisions produit fiables.
Bonnes pratiques
- Splitter d’abord, puis fit des transformations uniquement sur le train (
fit/transform). - Utiliser des pipelines (scikit-learn) pour enchaîner proprement.
- Adopter des splits adaptés : time series split, group split (par utilisateur).
- Isoler strictement un jeu de test final non consulté pendant le tuning.