IA 101
Qu’est-ce que la sur-ajustement ?

Qu’est-ce que la sur-ajustement ?
Lorsque vous entraînez un réseau neuronal, vous devez éviter la sur-ajustement. La sur-ajustement est un problème dans l’apprentissage automatique et les statistiques où un modèle apprend les modèles d’un jeu de données d’entraînement trop bien, expliquant parfaitement le jeu de données d’entraînement mais échouant à généraliser son pouvoir prédictif à d’autres jeux de données.
Pour le dire autrement, dans le cas d’un modèle de sur-ajustement, il affichera souvent une précision extrêmement élevée sur le jeu de données d’entraînement mais une faible précision sur les données collectées et exécutées dans le modèle à l’avenir. C’est une définition rapide de la sur-ajustement, mais explorons le concept de sur-ajustement en détail. Examinons comment la sur-ajustement se produit et comment elle peut être évitée.
Comprendre « l’ajustement » et la sous-ajustement
Il est utile de regarder le concept de sous-ajustement et de « ajustement » en général lorsqu’on discute de la sur-ajustement. Lorsque nous entraînons un modèle, nous essayons de développer un cadre capable de prédire la nature, ou la classe, des éléments dans un jeu de données, en fonction des fonctionnalités qui décrivent ces éléments. Un modèle devrait être capable d’expliquer un modèle dans un jeu de données et de prédire les classes de futurs points de données en fonction de ce modèle. Plus le modèle explique bien la relation entre les fonctionnalités de l’ensemble d’entraînement, plus notre modèle est « ajusté ».

La ligne bleue représente les prédictions d’un modèle qui sous-ajuste, tandis que la ligne verte représente un modèle mieux ajusté. Photo : Pep Roca via Wikimedia Commons, CC BY SA 3.0, (https://commons.wikimedia.org/wiki/File:Reg_ls_curvil%C3%ADnia.svg)
Un modèle qui explique mal la relation entre les fonctionnalités des données d’entraînement et qui échoue ainsi à classer avec précision les futurs exemples de données est en train de sous-ajuster les données d’entraînement. Si vous deviez tracer la relation prédite d’un modèle de sous-ajustement par rapport à l’intersection réelle des fonctionnalités et des étiquettes, les prédictions s’écarteraient de la marque. Si nous avions un graphique avec les valeurs réelles d’un ensemble d’entraînement étiqueté, un modèle de sous-ajustement grave manquerait considérablement la plupart des points de données. Un modèle avec un meilleur ajustement pourrait couper un chemin à travers le centre des points de données, avec des points de données individuels étant légèrement différents des valeurs prédites.
La sous-ajustement peut souvent se produire lorsqu’il n’y a pas suffisamment de données pour créer un modèle précis, ou lorsqu’on essaie de concevoir un modèle linéaire avec des données non linéaires. Plus de données d’entraînement ou plus de fonctionnalités réduiraient souvent la sous-ajustement.
Alors, pourquoi ne pas créer un modèle qui explique chaque point du jeu de données d’entraînement parfaitement ? N’est-ce pas que la précision parfaite est souhaitable ? Créer un modèle qui a appris les modèles du jeu de données d’entraînement trop bien est ce qui provoque la sur-ajustement. Le jeu de données d’entraînement et d’autres jeux de données que vous exécutez dans le modèle à l’avenir ne seront pas exactement les mêmes. Ils seront probablement très similaires à de nombreux égards, mais ils différeront également de manière significative. Par conséquent, concevoir un modèle qui explique parfaitement le jeu de données d’entraînement signifie que vous finissez par avoir une théorie sur la relation entre les fonctionnalités qui ne se généralise pas bien à d’autres jeux de données.
Comprendre la sur-ajustement
La sur-ajustement se produit lorsqu’un modèle apprend les détails dans le jeu de données d’entraînement trop bien, ce qui fait que le modèle souffre lorsqu’il fait des prédictions sur des données externes. Cela peut se produire lorsque le modèle apprend non seulement les fonctionnalités du jeu de données, mais également les fluctuations aléatoires ou le bruit dans le jeu de données, en accordant de l’importance à ces occurrences aléatoires ou non importantes.
La sur-ajustement est plus susceptible de se produire lorsque des modèles non linéaires sont utilisés, car ils sont plus flexibles lors de l’apprentissage des fonctionnalités des données. Les algorithmes d’apprentissage automatique non paramétriques ont souvent divers paramètres et techniques qui peuvent être appliqués pour contraindre la sensibilité du modèle aux données et réduire ainsi la sur-ajustement. Par exemple, les modèles d’arbre de décision sont très sensibles à la sur-ajustement, mais une technique appelée élagage peut être utilisée pour supprimer aléatoirement une partie des détails que le modèle a appris.
Si vous deviez tracer les prédictions du modèle sur les axes X et Y, vous auriez une ligne de prédiction qui zigzague d’avant en arrière, ce qui reflète le fait que le modèle a trop essayé de s’adapter à tous les points du jeu de données dans son explication.
Contrôler la sur-ajustement
Lorsque nous entraînons un modèle, nous voulons idéalement que le modèle ne fasse aucune erreur. Lorsque les performances du modèle convergent vers la prise de décisions correctes sur tous les points de données du jeu de données d’entraînement, l’ajustement devient meilleur. Un modèle avec un bon ajustement est capable d’expliquer presque tout le jeu de données d’entraînement sans sur-ajuster.
Lorsqu’un modèle s’entraîne, ses performances s’améliorent avec le temps. Le taux d’erreur du modèle diminuera à mesure que le temps d’entraînement passe, mais il ne diminue qu’à un certain point. Le point auquel les performances du modèle sur l’ensemble de test commencent à augmenter à nouveau est généralement le point auquel la sur-ajustement se produit. Pour obtenir le meilleur ajustement pour un modèle, nous voulons arrêter l’entraînement du modèle au point de perte la plus faible sur l’ensemble d’entraînement, avant que l’erreur ne commence à augmenter à nouveau. Le point d’arrêt optimal peut être déterminé en traçant les performances du modèle tout au long du temps d’entraînement et en arrêtant l’entraînement lorsque la perte est la plus faible. Cependant, un risque avec cette méthode de contrôle de la sur-ajustement est que spécifier le point de fin de l’entraînement en fonction des performances de test signifie que les données de test sont incluses dans la procédure d’entraînement et perdent ainsi leur statut de données « non touchées ».
Il existe plusieurs façons de lutter contre la sur-ajustement. Une méthode pour réduire la sur-ajustement consiste à utiliser une tactique d’échantillonnage, qui fonctionne en estimant la précision du modèle. Vous pouvez également utiliser un ensemble de validation en plus de l’ensemble de test et tracer la précision d’entraînement par rapport à l’ensemble de validation au lieu de l’ensemble de test. Cela garde votre ensemble de test non vu. Une méthode d’échantillonnage populaire est la validation croisée K-fold. Cette technique vous permet de diviser vos données en sous-ensembles sur lesquels le modèle est entraîné, puis les performances du modèle sur les sous-ensembles sont analysées pour estimer comment le modèle se comportera sur des données externes.
Utiliser la validation croisée est l’une des meilleures façons d’estimer la précision d’un modèle sur des données non vues, et lorsqu’elle est combinée avec un ensemble de validation, la sur-ajustement peut souvent être minimisée.












