Accéder au contenu principal

Qu'est-ce que l'overfitting ?

Apprenez les causes et les effets de l'ajustement excessif dans l'apprentissage automatique, et comment y remédier pour créer des modèles capables de bien se généraliser à de nouvelles données.
Actualisé 26 nov. 2024  · 5 min de lecture

Le surajustement est un problème courant dans le domaine de l'apprentissage automatique : un modèle apprend trop bien les données d'apprentissage, y compris le bruit et les valeurs aberrantes, ce qui le rend peu performant sur des données inédites. Il est essentiel de s'attaquer au problème du surajustement, car l'objectif premier d'un modèle est de faire des prédictions précises sur des données nouvelles et inédites, et non pas simplement de reproduire les données d'apprentissage.

L'overfitting expliqué

En matière d'apprentissage automatique, l'objectif ultime est de créer des modèles capables de se généraliser à de nouvelles données. Il y a surajustement lorsqu'un modèle s'adapte trop étroitement aux données d'apprentissage, capturant même ses fluctuations aléatoires. Imaginez que vous appreniez à un enfant à reconnaître les oiseaux, mais qu'au lieu de lui enseigner les caractéristiques générales des oiseaux, vous ne lui montriez que des pigeons. S'ils voient un aigle, ils peuvent encore penser qu'il s'agit d'un pigeon parce que c'est tout ce qu'ils savent.

Les causes du surajustement peuvent être nombreuses :

  • Modèles complexes. L'utilisation d'un modèle trop complexe pour une tâche simple peut conduire à un surajustement. Par exemple, l'utilisation d'une régression polynomiale de degré élevé pour des données de nature linéaire.
  • Données insuffisantes. S'il n'y a pas assez de données, le modèle risque de trouver des schémas qui n'existent pas vraiment.
  • Données bruitées. Si les données d'apprentissage contiennent des erreurs ou des fluctuations aléatoires, un modèle surajusté les traitera comme des modèles.

L'impact du surajustement est significatif. Alors qu'un modèle surajusté aura une grande précision sur ses données d'apprentissage, ses performances seront médiocres sur de nouvelles données inédites parce qu'il n'est pas assez généralisé.

Comment détecter le surajustement

La détection du surajustement est une étape cruciale du processus d'apprentissage automatique. Voici comment vous pouvez la repérer :

  • Ensemble de validation. Divisez vos données en ensembles de formation et de validation. Si votre modèle donne de bons résultats sur l'ensemble d'apprentissage, mais de piètres résultats sur l'ensemble de validation, il s'agit probablement d'un surajustement.
  • Courbes d'apprentissage. Tracez les performances du modèle sur les ensembles de formation et de validation au fil du temps. Si les deux courbes commencent à diverger, c'est un signe d'ajustement excessif.
  • Cross-validation. Utilisez la validation croisée, où les données d'apprentissage sont divisées plusieurs fois et le modèle est évalué sur chaque division.

Il est particulièrement important de vérifier l'absence de surajustement lorsque :

  • Vous utilisez un modèle complexe.
  • Vous disposez d'une petite quantité de données.
  • Les enjeux sont importants, comme dans les diagnostics médicaux.

Comment éviter le surajustement

Il vaut mieux prévenir le surajustement que le guérir. Voici quelques mesures à prendre :

  • Des modèles plus simples. Commencez par un modèle plus simple et n'ajoutez de la complexité que si nécessaire.
  • Plus de données. Si possible, collectez davantage de données. Plus un modèle est formé sur un grand nombre de données, mieux il peut se généraliser.
  • Régularisation. Des techniques telles que la régularisation L1 et L2 peuvent aider à prévenir le surajustement en pénalisant certains paramètres du modèle s'ils sont susceptibles de provoquer un surajustement.
  • Abandon. Dans les réseaux neuronaux, l'exclusion est une technique qui consiste à "exclure" des neurones aléatoires au cours de la formation, ce qui oblige le réseau à apprendre des caractéristiques plus robustes.

Consultez notre tutoriel complet sur la manière d'éviter l'overfitting dans l'apprentissage automatique.

Surajustement et sous-ajustement

Alors que l'overfitting est l'adaptation excessive d'un modèle aux données d'apprentissage, l'underfitting est l'inverse. Un modèle sous-adapté ne parvient même pas à capturer les schémas de base des données d'apprentissage.

  • Surajustement : Précision élevée sur les données d'entraînement, faible précision sur les nouvelles données. Imaginez un GPS qui fonctionne parfaitement dans votre ville natale mais qui se perd partout ailleurs.
  • Insuffisance d'ajustement : Faible précision sur les données de formation et les nouvelles données. C'est comme un GPS qui n'est même pas capable de naviguer dans votre ville natale.

Le surajustement et le sous-ajustement conduisent tous deux à des prédictions médiocres sur de nouvelles données, mais pour des raisons différentes. Alors que l'overfitting est souvent dû à un modèle trop complexe ou à des données bruitées, l'underfitting peut résulter d'un modèle trop simple ou d'un nombre insuffisant de caractéristiques.

Surajustement : La lutte permanente pour les ingénieurs ML

En tant qu'ingénieurs en apprentissage machine (ML), nous cherchons constamment à construire les modèles les plus précis possibles. Cependant, le surajustement est l'un des principaux risques liés à la recherche d'une grande précision.

De nombreuses entreprises tombent dans le piège de l'adaptation excessive. Ils constatent la grande précision de l'entraînement et supposent qu'ils ont mis au point un excellent modèle. Malheureusement, lorsqu'ils déploient le modèle dans le monde réel, celui-ci s'effondre complètement. C'est comme si vous réussissiez tous vos examens d'entraînement, mais que vous échouiez à l'examen réel.

En tant qu'ingénieurs ML, nous devons résister à la tentation de rechercher une précision parfaite sur les seules données d'entraînement. Vous ne pouvez tout simplement pas obtenir une précision de 100 % sur des données d'entraînement et vous attendre à ce que cela se traduise par de nouvelles données. Nous devons utiliser des techniques telles que la validation croisée, la régularisation, l'augmentation des données et l'assemblage pour nous assurer que nos modèles se généralisent bien.

Le parcours de l'apprentissage automatique consiste souvent à commencer par un modèle sous-adapté et à améliorer lentement la précision par itération. Mais il arrive un moment où des ajustements supplémentaires commencent à entraîner un surajustement. Nous devons trouver le juste milieu entre l'ajustement insuffisant et l'ajustement excessif pour trouver un modèle "Boucles d'or" qui donne de bons résultats dans toutes les situations.

Vous souhaitez en savoir plus sur l'IA et l'apprentissage automatique ? Consultez les ressources suivantes :

FAQ

Pourquoi l'ajustement excessif est-il mauvais ?

Le surajustement réduit la capacité d'un modèle à s'adapter à de nouvelles données, ce qui est son objectif principal.

Comment puis-je éviter que mon modèle ne soit surajouté ?

Utilisez des modèles plus simples, recueillez davantage de données, appliquez des techniques de régularisation et utilisez l'abandon dans les réseaux neuronaux.

Le surajustement peut-il être bénéfique dans certains scénarios ?

Dans de très rares cas, si les données d'apprentissage sont extrêmement représentatives et complètes, le surajustement peut ne pas être préjudiciable. Cependant, dans la plupart des scénarios réels, cela n'est pas souhaitable.


Photo of Abid Ali Awan
Author
Abid Ali Awan
LinkedIn
Twitter

En tant que data scientist certifié, je suis passionné par l'utilisation des technologies de pointe pour créer des applications innovantes d'apprentissage automatique. Avec une solide expérience en reconnaissance vocale, en analyse de données et en reporting, en MLOps, en IA conversationnelle et en NLP, j'ai affiné mes compétences dans le développement de systèmes intelligents qui peuvent avoir un impact réel. En plus de mon expertise technique, je suis également un communicateur compétent, doué pour distiller des concepts complexes dans un langage clair et concis. En conséquence, je suis devenu un blogueur recherché dans le domaine de la science des données, partageant mes idées et mes expériences avec une communauté grandissante de professionnels des données. Actuellement, je me concentre sur la création et l'édition de contenu, en travaillant avec de grands modèles linguistiques pour développer un contenu puissant et attrayant qui peut aider les entreprises et les particuliers à tirer le meilleur parti de leurs données.

Sujets