Qu'est-ce que le sous-ajustement ?
Apprenez à éviter le sous-ajustement afin de pouvoir généraliser avec précision les données en dehors de votre modèle
arrière-plan noir et bleu
Qu'est-ce que le sous-ajustement ?

Le sous-ajustement est un scénario de la science des données dans lequel un modèle de données est incapable de capturer la relation entre les variables d'entrée et de sortie avec précision, générant un taux d'erreur élevé à la fois sur le jeu d'entraînement et sur les données non vues. Il se produit lorsqu'un modèle est trop simple, ce qui peut être le résultat d'un modèle nécessitant plus de temps d'apprentissage, plus de fonctions d'entrée ou moins de régularisation. Comme dans le cas du sur-ajustement, lorsqu'un modèle est sous-ajusté, il ne peut pas établir la tendance dominante au sein des données, ce qui entraîne des erreurs d'entraînement et affecte les performances. Si un modèle ne peut pas bien généraliser par rapport à de nouvelles données, il ne peut pas être exploité pour des tâches de classification ou de prédiction. La généralisation d'un modèle à de nouvelles données est en définitive ce qui nous permet d'utiliser chaque jour des algorithmes d'apprentissage automatique pour effectuer des prédictions et classer les données.

Un biais élevé et une faible variance sont de bons indicateurs de sous-ajustement. Comme ce comportement peut être observé lors de l'utilisation du jeu de données d'entraînement, les modèles sous-ajustés sont généralement plus faciles à identifier que les modèles sur-ajustés.

Produits à la une

Watson Studio

IBM Cloud Pak for Data

Sous-ajustement et sur-ajustement

En termes simples, le sur-ajustement est l'opposé du sous-ajustement. Il se produit lorsque le modèle a été sur-entraîné ou lorsqu'il contient trop de complexité, ce qui entraîne des taux d'erreur élevés sur les données de test. Le sur-ajustement d'un modèle est plus fréquent que le sous-ajustement. Ce dernier se produit généralement dans le but d'éviter le sur-ajustement par un processus appelé « arrêt anticipé ».

Si le sous-entraînement ou le manque de complexité entraîne un sous-ajustement, une stratégie de prévention logique consisterait à augmenter la durée de l'entraînement ou à ajouter des données plus pertinentes. Toutefois, si vous entraînez trop le modèle ou lui ajoutez trop de fonctions, vous risquez de le sur-ajuster, ce qui se traduira par un biais faible, mais une variance élevée (on parle de compromis biais-variance). Dans ce scénario, le modèle statistique s'adapte trop étroitement à ses données d'apprentissage, ce qui le rend incapable de bien généraliser par rapport à de nouveaux points de données. Il est important de noter que certains types de modèles sont plus enclins au sur-ajustement que d'autres, comme les arbres de décision ou les modèles KNN.  

Il peut être plus difficile d'identifier le sur-ajustement que le sous-ajustement car, contrairement au sous-ajustement, les données d'entraînement sont très précises dans un modèle sur-ajusté. Pour évaluer la précision d'un algorithme, la technique appelée validation croisée k-fold est généralement utilisée.

Dans la validation croisée k-fold, les données sont divisées en sous-ensembles k de taille égale, également appelés « folds ». 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.

Le scénario idéal lors de l'ajustement d'un modèle est de trouver l'équilibre entre le sur-ajustement et le sous-ajustement. L'identification de ce « point idéal » entre les deux permet aux modèles d'apprentissage automatique de faire des prédictions avec précision.

Comment éviter le sous-ajustement

Puisque nous pouvons détecter les sous-ajustements à partir du jeu d'entraînement, nous pouvons mieux aider à établir la relation dominante entre les variables d'entrée et de sortie dès le départ. En maintenant une complexité de modèle adéquate, nous pouvons éviter le sous-ajustement et faire des prédictions plus précises. Voici quelques techniques qui peuvent être utilisées pour réduire le sous-ajustement :

Diminuer la régularisation

La régularisation est généralement utilisée pour réduire la variance d'un modèle en appliquant une pénalité aux paramètres d'entrée ayant les plus grands coefficients. Il existe un certain nombre de méthodes différentes, telles que la régularisation L1, la régularisation Lasso, le dropout, etc., qui permettent de réduire le bruit et les valeurs extrêmes dans un modèle. Cependant, si les fonctions de données deviennent trop uniformes, le modèle est incapable d'identifier la tendance dominante, ce qui entraîne un sous-ajustement. En diminuant la quantité de régularisation, une plus grande complexité et une plus grande variation sont introduites dans le modèle, ce qui permet de réussir l'entraînement du modèle.

Augmenter la durée de l'entraînement

Comme nous l'avons mentionné précédemment, arrêter l'entraînement trop tôt peut également produire un modèle sous-ajusté. Cela peut être évité en prolongeant la durée de l'entraînement. Cependant, il est important d'être conscient du surentraînement et, par la suite, du sur-ajustement. Il sera essentiel de trouver un équilibre entre ces deux scénarios.

Sélection de fonctions

Dans tout modèle, des fonctions spécifiques sont utilisées pour déterminer un résultat donné. Si les fonctions prédictives présentes sont insuffisantes, un plus grand nombre de fonctions ou des fonctions plus importantes doivent être introduites. Par exemple, dans un réseau de neurones, vous pouvez ajouter plus de neurones cachés, ou dans une forêt aléatoire, vous pouvez ajouter plus d'arbres. Ce processus injectera plus de complexité dans le modèle, ce qui améiorera les résultats d'entraînement.

Solutions connexes
IBM® Watson Studio

Créez, exécutez et gérez des modèles d'IA. Préparez les données et construisez des modèles dans n'importe quel cloud à l'aide d'un code source ouvert ou de la modélisation visuelle. Prévoyez et optimisez vos résultats.

Explorer IBM Watson® Studio
IBM Cloud Pak® for Data

IBM Cloud Pak for Data est une plateforme de données ouverte et extensible qui fournit un ensemble de nœuds de données pour rendre toutes les données disponibles pour l'IA et l'analyse dans n'importe quel cloud.

Explorer Cloud Pak for Data
Ressources IBM, entreprise leader selon The Forrester Wave™ : Multimodal Predictive Analytics and Machine Learning, 3e trimestre 2020

Découvrez pourquoi Watson Studio est le « joyau de la couronne du Cloud Pak for Data ».

Pour aller plus loin

IBM Watson Studio est une plateforme de données ouverte qui permet aux spécialistes des données de créer, d'exécuter, de tester et d'optimiser des modèles d'intelligence artificielle (IA) à l'échelle de n'importe quel cloud. IBM Watson Studio vous permet de rendre l'IA opérationnelle partout dans le cadre d'IBM Cloud Pak® for Data. Unissez les équipes, simplifiez la gestion du cycle de vie de l'IA et accélérez le délai de rentabilité avec des cadres open source comme PyTorch, TensorFlow et scikit-learn et des langages courants comme Python, R et Scala.

Essayer IBM Watson® Studio dès aujourd'hui