Surajustement
Intelligence artificielle
Arrière-plan noir et bleu
Surajustement

Apprenez à éviter le surajustement, afin que vous puissiez généraliser avec précision les données en dehors de votre modèle.


Qu'est-ce que le surajustement ?

Le surajustement est un concept de la science des données, qui se produit lorsqu'un modèle statistique correspond exactement à ses données d'apprentissage. Lorsque cela se produit, l'algorithme ne peut malheureusement pas fonctionner avec précision contre des données invisibles, ce qui va à l'encontre de son objectif. La généralisation d'un modèle à de nouvelles données est finalement ce qui nous permet d'utiliser chaque jour des algorithmes d'apprentissage automatique pour faire des prédictions et classer les données.

Lorsque des algorithmes d'apprentissage automatique sont construits, ils exploitent un exemple de jeu de données pour entraîner le modèle. Cependant, lorsque le modèle s'entraîne trop longtemps sur des exemples de données ou lorsque le modèle est trop complexe, il peut commencer à apprendre le « bruit » ou les informations non pertinentes, au sein du jeu de données. Lorsque le modèle mémorise le bruit et s'adapte trop étroitement au jeu de données d'apprentissage, le modèle devient « sur-équipé » et il est incapable de bien généraliser à de nouvelles données. Si un modèle ne peut pas bien généraliser à de nouvelles données, il ne sera pas en mesure d'effectuer les tâches de classification ou de prédiction pour lesquelles il était destiné.

De faibles taux d'erreur et une variance élevée sont de bons indicateurs de surajustement. Afin d'éviter ce type de comportement, une partie du jeu de données d'apprentissage est généralement réservée comme « ensemble de test » pour vérifier le surajustement. Si les données d'apprentissage ont un faible taux d'erreur et que les données de test ont un taux d'erreur élevé, cela signale un surajustement.


Surajustement vs sous-ajustement

Si le surapprentissage ou la complexité du modèle entraîne un surajustement, une réponse de prévention logique consisterait soit à suspendre le processus d'apprentissage plus tôt, également appelé « arrêt précoce », soit à réduire la complexité du modèle en éliminant les entrées moins pertinentes. Cependant, si vous faites une pause trop tôt ou excluez trop de fonctionnalités importantes, vous pouvez rencontrer le problème inverse et, à la place, vous risquez de sous-ajuster votre modèle. Le sous-ajustement se produit lorsque le modèle n'a pas été entraîné pendant suffisamment de temps ou que les variables d'entrée ne sont pas suffisamment significatives pour déterminer une relation significative entre les variables d'entrée et de sortie.

Dans les deux scénarios, le modèle ne peut pas établir la tendance dominante au sein du jeu de données d'apprentissage. En conséquence, le sous-ajustement se généralise également mal aux données invisibles. Cependant, contrairement au surajustement, les modèles sous-ajustés présentent un biais élevé et moins de variance dans leurs prédictions. Cela illustre le compromis biais-variance, qui se produit lorsqu'un modèle sous-ajusté passe à un état sur-ajusté. Au fur et à mesure que le modèle apprend, son biais diminue, mais sa variance peut augmenter à mesure qu'il devient surajusté. Lors de l'ajustement d'un modèle, l'objectif est de trouver le « point idéal » entre le sous-ajustement et le surajustement, afin qu'il puisse établir une tendance dominante et l'appliquer largement à de nouveaux jeux de données.


Comment détecter les modèles de surajustement

Pour comprendre la précision des modèles d'apprentissage automatique, il est important de tester l'adéquation du modèle. La validation croisée K-fold est l'une des techniques les plus populaires pour évaluer la précision du modèle.

Dans la validation croisée de k-folds, les données sont divisées en sous-ensembles k de taille égale, également appelés « plis ». L'un des plis k servira d'ensemble de test, également connu sous le nom d'ensemble d'exclusion ou d'ensemble de validation, et les plis restants entraîneront le modèle. Ce processus se répète jusqu'à ce que chacun des plis ait agi comme un pli de retenue. Après chaque évaluation, un score est retenu et lorsque toutes les itérations sont terminées, les scores sont moyennés pour évaluer les performances du modèle global.


Comment éviter le surajustement

Bien que l'utilisation d'un modèle linéaire nous aide à éviter le surajustement, de nombreux problèmes du monde réel sont non linéaires. En plus de comprendre comment détecter le surajustement, il est important de comprendre comment l'éviter complètement. Vous trouverez ci-dessous un certain nombre de techniques que vous pouvez utiliser pour éviter le surajustement :

  • Arrêt précoce : comme nous l'avons mentionné précédemment, cette méthode cherche à mettre en pause l'apprentissage avant que le modèle ne commence à apprendre le bruit dans le modèle. Cette approche risque d'arrêter le processus d'apprentissage trop tôt, conduisant au problème inverse de sous-ajustement. Trouver le « point idéal » entre le sous-ajustement et le surajustement est l'objectif ultime ici.
  • Apprentissage avec plus de données : étendre le jeu d'apprentissage pour inclure plus de données peut augmenter la précision du modèle en offrant plus d'opportunités d'analyser la relation dominante entre les variables d'entrée et de sortie. Cela dit, il s'agit d'une méthode plus efficace lorsque des données propres et pertinentes sont injectées dans le modèle. Sinon, vous pourriez simplement continuer à ajouter plus de complexité au modèle, ce qui entraînerait un surajustement.
  • Extension de données : bien qu'il soit préférable d'injecter des données propres et pertinentes dans vos données d'apprentissage, des données corrompues sont parfois ajoutées pour rendre un modèle plus stable. Cependant, cette méthode doit être utilisée avec parcimonie.
  • Sélection des fonctions : lorsque vous créez un modèle, vous disposez d'un certain nombre de paramètres ou de fonctions qui sont utilisés pour prédire un résultat donné, mais souvent ces fonctions peuvent être redondantes pour d'autres. La sélection des fonctions est le processus consistant à identifier les plus importantes dans les données d'apprentissage, puis à éliminer celles qui ne sont pas pertinentes ou redondantes. Ceci est communément confondu avec la réduction de dimensionnalité, mais ce n'est pas la même chose.  Cependant, les deux méthodes aident à simplifier votre modèle pour établir la tendance dominante dans les données.
  • Régularisation : si le surajustement se produit lorsqu'un modèle est trop complexe, il est logique que nous réduisions le nombre de fonctions. Mais que se passe-t-il si nous ne savons pas quelles entrées éliminer pendant le processus de sélection des fonctions ? Si nous ne savons pas quelles fonctions retirer de notre modèle, les méthodes de régularisation peuvent être particulièrement utiles. La régularisation applique une « pénalité » aux paramètres d'entrée avec les coefficients les plus élevés, ce qui limite par la suite la quantité de variance dans le modèle.  Bien qu'il existe un certain nombre de méthodes de régularisation, telles que la régularisation L1, la régularisation Lasso et le dropout, elles cherchent toutes à identifier et à réduire le bruit dans les données.
  • Méthodes d'agrégation : les méthodes d'agrégation pour les algorithmes d'apprentissage sont constituées d'un ensemble d'algorithmes de classification, par exemple, des arbres de décision, et leurs prédictions sont agrégées pour identifier le résultat le plus fréquent. Les méthodes d'agrégation les plus connues sont le bagging et le boosting. Dans le bagging, un échantillon aléatoire de données est sélectionné avec remplacement dans un jeu d'apprentissage, ce qui signifie que les points de données individuels peuvent être choisis plus d'une fois. Après que plusieurs échantillons de données sont générés, ces modèles sont alors entraînés de manière indépendante, et en fonction du type de tâche, c'est-a-dire d'une régression ou d'une classification, la moyenne ou la majorité de ces prédictions génère une estimation plus précise. Cette approche est couramment utilisée pour réduire la variance au sein d'un jeu de données corrompues.
Découvrez comment tirer parti de certaines de ces approches dans ce didacticiel de reconnaissance d'image IBM Developer

Recherche récente

Bien que ce qui précède soit la définition établie du surajustement, une recherche récente (PDF, 1,2 Mo) (le lien réside en dehors d'IBM) indique que les modèles complexes, tels que les modèles d'apprentissage en profondeur et les réseaux de neurones, fonctionnent avec une grande précision bien qu'ils soient entraînés à « ajuster parfaitement ou à interpoler ». Ce résultat est en contradiction directe avec la littérature historique sur ce sujet, et s'explique par la courbe de risque « double descente » ci-dessous. Vous pouvez voir que lorsque le modèle apprend au-delà du seuil d'interpolation, les performances du modèle s'améliorent. Les méthodes que nous avons mentionnées précédemment pour éviter le surajustement, telles que l'arrêt précoce et la régularisation, peuvent en fait empêcher l'interpolation.


IBM et surajustement

IBM Watson Studio est une plateforme de données ouverte qui permet aux spécialistes des données de créer, exécuter, tester et optimiser des modèles d'IA à grande échelle sur n'importe quel cloud. IBM Watson Studio vous permet de rendre l'IA opérationnelle partout grâce à IBM Cloud Pak® for Data. Unifiez les équipes, simplifiez la gestion du cycle de vie de l'IA et accélérez la rentabilisation grâce à une architecture multicloud ouverte et flexible.

Pour créer des modèles d'apprentissage automatique avec précision, inscrivez-vous à IBMid et créez votre compte IBM Cloud dès aujourd'hui.


Solutions connexes

Watson Studio

IBM Watson Studio est une plateforme de données ouverte qui permet aux spécialistes des données de créer, exécuter, tester et optimiser des modèles d'IA à grande échelle sur n'importe quel cloud.