Saturday, 11 July 2026 | Mise à jour quotidienne L'intelligence artificielle au service des constructeurs

Le surapprentissage en apprentissage automatique : ce que c’est et comment l’éviter

Mis à jour · Initialement publié le 18 mai 2026

Un modèle d’apprentissage automatique peut obtenir une précision de 99 % lors des tests, puis échouer lamentablement dans le monde réel. Le coupable habituel porte un nom : surapprentissage. Il s’agit de l’erreur la plus fréquente en apprentissage automatique appliqué, et sa compréhension est essentielle pour construire des modèles réellement opérationnels. Ce guide explique clairement le surapprentissage et vous présente les méthodes éprouvées pour l’éviter.

Points clés

  • surapprentissage Le surapprentissage se produit lorsqu’un modèle mémorise ses données d’entraînement au lieu d’apprendre le motif général.
  • Le signe caractéristique : des performances excellentes sur les données d’entraînement, mais médiocres sur des données nouvelles.
  • Le problème inverse est le sous-apprentissage (underfitting) — un modèle trop simple pour apprendre le motif sous-jacent.
  • Prévenez-le grâce à : davantage de données, un modèle plus simple, la régularisation, la validation croisée et l’arrêt prématuré.
  • Testez toujours sur des données que le modèle n’a jamais vues — c’est là la seule mesure honnête de sa qualité.

Qu’est-ce que le surapprentissage ?

Le surapprentissage se produit lorsqu’un modèle apprend ses données d’entraînement trop parfaitement — y compris le bruit, les particularités et les accidents aléatoires qui ne représentent pas le motif réel. Au lieu d’apprendre la règle générale, il mémorise des exemples spécifiques.

L’objectif de l’apprentissage automatique est la généralisation: bien performer sur de nouvelles données non vues. Un modèle surajusté échoue précisément à cela. Il a essentiellement mémorisé les réponses à l’examen d’entraînement, obtenant ainsi un score parfait sur cet examen — puis il échoue lamentablement à l’examen réel, car les questions sont différentes.

Une analogie simple

Imaginez deux étudiants qui se préparent à un contrôle de mathématiques.

Le premier comprend les concepts — les méthodes, le raisonnement. Proposez-lui n’importe quel problème, même s’il ne l’a jamais vu, et il saura le résoudre.

Le second mémorise les exercices d’entraînement exacts et leurs réponses, mot pour mot. Sur le contrôle d’entraînement, il obtient la note maximale. Sur le contrôle réel, avec de nouveaux chiffres, il est perdu — il n’a jamais appris la méthode, seulement les réponses spécifiques.

Le second étudiant est un modèle surajusté : irréprochable sur les données d’entraînement, mais totalement désemparé face à toute nouvelle donnée.

Comment détecter le surajustement

Le surajustement présente un signe classique et incontestable : un écart important entre les performances sur les données d’entraînement et celles sur les données de test.

C’est pourquoi vous devez toujours diviser vos données. Vous entraînez le modèle sur une partie (l’ensemble d’entraînement) et l’évaluez sur une autre partie qu’il n’a jamais vue (l’ensemble de test). Ensuite :

  • Écart faible, les deux scores sont bons → le modèle généralise bien. C’est sain.
  • Score d’entraînement élevé, score de test nettement plus bas → surajustement. Le modèle a mémorisé.
  • Les deux scores sont médiocres → sous-ajustement. Le modèle est trop simple (nous y reviendrons ci-dessous).

Si votre modèle excelle sur les données d’entraînement mais obtient des résultats moyens sur les données de test, vous êtes confronté à un surajustement — point final.

Le problème inverse : le sous-ajustement

Le surajustement possède un pendant symétrique. Le sous-ajustement se produit lorsqu’un modèle est trop simple pour capturer le motif réel, ce qui entraîne de mauvaises performances sur les données d’entraînement les deux et sur les données de test. Il n’a pas mémorisé — il n’a tout simplement pas appris.

Ces deux phénomènes définissent un équilibre que tout praticien de l’apprentissage automatique doit constamment gérer :

ProblèmeScore d’entraînementScore de testCause
Le sous-ajustementMédiocreMédiocreModèle trop simple
Ajustement correctBonBonComplexité adaptée
surapprentissageExcellentMédiocreModèle trop complexe / trop peu de données

L’objectif est la ligne centrale : un modèle suffisamment complexe pour apprendre le motif, mais pas tellement complexe qu’il en vienne à mémoriser le bruit.

Pourquoi le surajustement se produit-il ?

Les causes les plus courantes sont :

  • Trop peu de données d’entraînement — avec peu d’exemples, le modèle peut tous les mémoriser au lieu de généraliser.
  • Un modèle trop complexe — un modèle très flexible dispose d’une capacité suffisante pour s’ajuster à chaque particularité des données.
  • Un entraînement trop long — au-delà d’un certain point, un entraînement supplémentaire ne fait que coller davantage au bruit.
  • Des données bruyantes ou de mauvaise qualité — plus les données contiennent d’éléments aléatoires ou parasites, plus il y a de « faux apprentissages » possibles.
  • Trop de caractéristiques (features) — des entrées non pertinentes offrent au modèle des motifs fallacieux auxquels se raccrocher.

Comment prévenir le surajustement

Il n’existe pas de solution unique — les praticiens combinent plusieurs techniques.

1. Obtenir davantage de données d’entraînement

Le remède le plus efficace. Avec davantage d’exemples, la mémorisation devient impossible et le modèle est contraint d’apprendre le motif réel. Lorsque vous ne pouvez pas collecter davantage de données, augmentation des données — générer des variations réalistes de celles que vous possédez (par exemple, faire pivoter ou rogner des images) — permet d’y remédier.

2. Simplifier le modèle

Si le modèle est trop complexe, réduisez sa capacité : moins de paramètres, une architecture moins profonde, moins de caractéristiques. Essayez toujours d’abord un modèle plus simple — il est moins sujet au surajustement et plus facile à interpréter.

3. Utiliser la régularisation

La régularisation ajoute une pénalité liée à la complexité durant l’entraînement, décourageant ainsi le modèle de trop compter sur une caractéristique particulière ou de s’ajuster à des valeurs extrêmes. Il s’agit d’une option standard, intégrée à la plupart des algorithmes d’apprentissage automatique, et l’un des outils les plus efficaces disponibles.

4. Utilisez la validation croisée

La validation croisée évalue le modèle sur plusieurs découpages différents des données, plutôt qu’un seul. Elle fournit une estimation plus honnête et stable des performances en conditions réelles et révèle rapidement un modèle qui ne semble performant que par hasard sur un découpage particulier.

5. Arrêtez l’entraînement prématurément

Surveillez les performances sur un jeu de validation pendant l’entraînement. Dès que les performances sur ce jeu cessent de s’améliorer puis commencent à se dégrader, arrêtez l’entraînement — poursuivre au-delà de ce point ne fait que faire converger le modèle vers du bruit. Cela s’appelle l’arrêt prématuré.

6. Utilisez le dropout (pour les réseaux de neurones)

Pour réseaux de neurones, dropout le dropout désactive aléatoirement certains neurones à chaque étape d’entraînement. Cela empêche le réseau de trop compter sur un chemin unique et le contraint à apprendre des motifs plus robustes et généralisables.

7. Réservez systématiquement un véritable jeu de test

C’est une règle absolue : conservez une portion des données que le modèle ne voit jamais durant l’entraînement ou l’ajustement, et évaluez-le uniquement sur celle-ci. C’est la seule mesure honnête de ses performances dans le monde réel.

Fuites de données : la cause cachée de résultats trompeusement excellents

La majeure partie de ce guide traite le surapprentissage comme un problème de modélisation — un modèle trop complexe pour trop peu de données. Mais une autre cause, plus discrète, produit le même symptôme et trompe bien davantage de praticiens : les fuites de données. Une fuite de données se produit lorsqu’une information qui ne serait pas disponible au moment de la prédiction s’infiltre accidentellement dans le processus d’entraînement. Le modèle semble brillant lors des tests, puis s’effondre en production. Si vos scores de validation semblent trop beaux pour être vrais, soupçonnez d’abord une fuite de données plutôt qu’un simple coup de chance.

Deux catégories principales doivent être surveillées :

  • Contamination entre les jeux d’entraînement et de test. Des données issues du jeu de test s’infiltrent dans le processus d’entraînement. L’erreur classique consiste à appliquer des opérations de prétraitement avant avant le découpage : si vous normalisez, mettez à l’échelle ou imputez des valeurs manquantes en utilisant des statistiques calculées sur l’ensemble complet des données, votre jeu d’entraînement a déjà « vu » la moyenne et l’étendue du jeu de test. Découpez toujours les données en premier lieu, puis ajustez tout transformateur uniquement sur le jeu d’entraînement avant de l’appliquer au jeu de test.
  • Fuite de la cible (target leakage). Une caractéristique (feature) encode secrètement la réponse. Un modèle prédisant si un patient souffre d’une maladie semblera quasi parfait si l’une de ses entrées est « médicament prescrit pour cette maladie » — une information qui n’existe qu’après le diagnostic. Cette caractéristique n’est pas disponible au moment où vous avez réellement besoin d’une prédiction, donc le score obtenu est illusoire.

Les données chronologiques ajoutent un troisième piège. Mélanger aléatoirement une série temporelle avant son découpage permet au modèle de s’entraîner sur le futur pour prédire le passé, ce qui viole le principe de causalité et surestime artificiellement la précision. Pour toute donnée comportant un horodatage, effectuez un découpage chronologique : entraînez le modèle sur les périodes antérieures et testez-le sur les périodes ultérieures.

Les fuites de données sont particulièrement dangereuses précisément parce que les solutions décrites ailleurs dans cet article ne les détectent pas. Davantage de données, la régularisation et l’arrêt prématuré supposent tous que votre évaluation est honnête. Si le jeu de test est contaminé, chaque indicateur sur lequel vous comptez pour détecter le surapprentissage est lui-même corrompu — le modèle passe donc tous les tests avec succès, mais échoue néanmoins auprès des utilisateurs réels.

Trois bonnes pratiques permettent d’éviter la plupart des fuites. Premièrement, encapsulez le prétraitement et le modèle dans un pipeline unique (scikit-learn propose la classe Pipeline à cet effet), afin que les transformations ne soient ajustées que sur les plis d’entraînement. Deuxièmement, examinez rigoureusement les caractéristiques suspectes en vous demandant : « Est-ce que je connaîtrais réellement cette valeur au moment précis où je dois produire une prédiction ? » Si la réponse est non, supprimez-la. Troisièmement, lorsque les résultats semblent spectaculaires, considérez-les comme un signal d’alerte justifiant une enquête approfondie, plutôt que comme une victoire à célébrer. Une généralisation authentique ne paraît presque jamais sans effort.

FAQ

Qu’est-ce que le surapprentissage (overfitting) en apprentissage automatique ?

Le surapprentissage survient lorsqu’un modèle apprend trop bien ses données d’entraînement — il mémorise le bruit et les particularités plutôt que le motif général. Il obtient d’excellentes performances sur les données d’entraînement, mais se comporte médiocrement sur de nouvelles données non vues, car il n’a jamais appris à généraliser.

Comment savoir si mon modèle est en surapprentissage ?

Comparez ses performances sur les données d’entraînement et sur les données de test (qu’il n’a jamais vues). S’il obtient un score nettement supérieur sur les données d’entraînement que sur celles de test, il est en surapprentissage. Un modèle sain obtient des performances similaires sur les deux jeux.

Quelle est la différence entre surapprentissage et sous-apprentissage (underfitting) ?

Le surapprentissage correspond à un modèle trop complexe, qui mémorise les données d’entraînement et échoue sur de nouvelles données. Le sous-apprentissage correspond à un modèle trop simple pour saisir le motif sous-jacent, ce qui entraîne de mauvaises performances à la fois sur les données d’entraînement et sur les nouvelles données. L’objectif est de trouver un équilibre entre ces deux extrêmes.

Comment éviter le surapprentissage ?

Utilisez davantage de données d’entraînement, choisissez un modèle plus simple, appliquez des techniques de régularisation, employez la validation croisée et arrêtez l’entraînement dès que les performances sur le jeu de validation cessent de s’améliorer. Pour les réseaux de neurones, le dropout constitue également une aide efficace. La plupart des praticiens combinent plusieurs de ces techniques.

Est-ce que davantage de données résout toujours le surapprentissage ?

Davantage de données de haute qualité est le remède le plus fiable, car cela rend la mémorisation impossible et impose un apprentissage authentique. Toutefois, ces données ne sont pas toujours disponibles — c’est pourquoi simplifier le modèle, appliquer la régularisation ou recourir à l’arrêt prématuré constituent des alternatives pratiques tout aussi importantes.

Qu’est-ce qu’une fuite de données, et en quoi diffère-t-elle du surapprentissage ?

Le surapprentissage correspond à un modèle qui mémorise le bruit présent dans des données d’entraînement légitimes. Une fuite de données, quant à elle, implique une information qui ne devrait pas être disponible — telle que des statistiques calculées sur le jeu de test ou une caractéristique qui encode directement la réponse — et qui contamine le processus d’entraînement. Ces deux phénomènes produisent le même symptôme (des scores excellents sur le jeu de test, mais de mauvaises performances en conditions réelles), mais les fuites de données sont plus insidieuses : elles rendent l’évaluation elle-même peu fiable, si bien que les méthodes habituelles de détection du surapprentissage échouent à les identifier. La solution consiste à adopter une hygiène rigoureuse des données — découpez toujours avant de prétraiter, et examinez scrupuleusement toute caractéristique qui semble trop prédictive.

Pourquoi mon modèle est-il en surapprentissage lorsque j’effectue un affinage fin (fine-tuning) d’un grand modèle linguistique (LLM) sur un petit jeu de données ?

Les petits jeux de données destinés à l’affinage fin constituent un risque classique de surapprentissage : avec peu d’exemples, le modèle les mémorise plutôt que d’apprendre le motif sous-jacent. Le signe révélateur est une baisse de la perte d’entraînement accompagnée d’une hausse de la perte de validation. Les remèdes standards consistent à limiter le nombre d’époques (souvent à quelques unités seulement) et à utiliser une méthode efficace en paramètres, comme LoRA, qui restreint les mises à jour à un sous-ensemble réduit de poids et agit ainsi comme une régularisation intégrée résistant à la mémorisation.

Un faible écart entre les précisions obtenues sur les jeux d’entraînement et de test est-il acceptable ?

Oui. Un faible écart est normal et sain — aucun modèle ne donne des performances identiques sur des données qu’il a déjà vues et sur des données qu’il n’a jamais rencontrées. Le surapprentissage se manifeste par un grand ou élargissement de cet écart, où la précision sur le jeu d’entraînement continue d’augmenter tandis que celle sur le jeu de test stagne ou diminue. Chercher à annuler totalement cet écart conduit généralement au sous-apprentissage. Évaluez un modèle sur ses performances sur le jeu de test, et considérez l’écart comme un voyant indiquant une tendance à surveiller, plutôt qu’une valeur à éliminer absolument.

Conclusion

Le surapprentissage traduit l’écart entre paraître performant et l’être réellement. Un modèle qui mémorise ses données d’entraînement vous impressionnera lors des tests, mais vous décevra en production — il a appris les réponses, pas la méthode.

La défense est simple : évaluez toujours sur des données que le modèle n’a jamais vues, surveillez l’écart entre les performances sur les jeux d’entraînement et de test, et prévenez le surapprentissage grâce à davantage de données, à des modèles plus simples, à la régularisation, à la validation croisée et à l’arrêt prématuré. Maîtrisez cet équilibre, et vous construirez des modèles qui fonctionnent non seulement sur votre poste de travail, mais aussi dans le monde réel. Pour une vue d’ensemble, consultez notre guide sur le machine learning.

Défiler vers le haut
Featured on There's An AI For That