L’intelligence artificielle (IA) désigne un ensemble de technologies et de méthodes visant à créer...
Model Fit, Underfitting et Overfitting
Introduction
L’une des étapes clés dans le développement d’un modèle de Machine Learning est de comprendre comment le modèle s’adapte aux données d’entraînement. Cette notion, appelée Model Fit, est essentielle pour garantir que le modèle génère des prédictions fiables et généralisables sur de nouvelles données.
Deux problèmes principaux peuvent survenir lors de l’apprentissage : le sous-apprentissage (underfitting) et le sur-apprentissage (overfitting). Savoir les détecter et les corriger est crucial pour obtenir un modèle performant.
1. Model Fit
Le Model Fit décrit le degré d’adéquation entre le modèle et les données d’entraînement. Il existe plusieurs niveaux d’ajustement :
-
Bon ajustement (Good Fit) : le modèle capture les tendances et les relations importantes des données sans mémoriser le bruit. Il performe bien sur les données d’entraînement et sur les données de test.
-
Sous-ajustement (Underfitting) : le modèle est trop simple et ne capture pas les motifs essentiels. La performance est faible à la fois sur les données d’entraînement et de test.
-
Sur-ajustement (Overfitting) : le modèle est trop complexe et s’adapte trop aux données d’entraînement, incluant le bruit. Il performe très bien sur l’entraînement mais mal sur de nouvelles données.
Exemple concret : Dans un projet de prédiction de consommation d’énergie, un modèle linéaire simple peut ne pas capturer la variation saisonnière des données, entraînant un underfitting. À l’inverse, un modèle polynomial très complexe peut parfaitement prédire les valeurs passées mais se tromper sur des jours inédits, illustrant l’overfitting.
2. Underfitting
Le sous-apprentissage survient lorsque le modèle ne dispose pas de suffisamment de capacité pour représenter les relations présentes dans les données. Cela peut être dû à un modèle trop simple, à un nombre insuffisant de features, ou à un entraînement trop court.
Symptômes :
-
Erreurs élevées sur les données d’entraînement et de test.
-
Modèle incapable de saisir les motifs complexes des données.
Solutions :
-
Ajouter des features pertinentes via le feature engineering.
-
Utiliser un modèle plus complexe ou adapté aux données.
-
Entraîner le modèle plus longtemps ou ajuster les hyperparamètres (learning rate, taille du batch, nombre d’époques).
Exemple concret : Pour prédire la satisfaction client à partir de commentaires textuels, un modèle utilisant uniquement le nombre de mots par phrase comme feature pourrait être trop simple et sous-performer, nécessitant l’ajout d’embeddings de mots ou de scores de sentiment.
3. Overfitting
Le sur-apprentissage se produit lorsque le modèle mémorise trop les données d’entraînement, y compris le bruit ou les exceptions, et perd sa capacité de généralisation.
Symptômes :
-
Erreur faible sur les données d’entraînement mais élevée sur les données de test.
-
Performance instable sur de nouvelles données.
Solutions :
-
Régularisation : appliquer L1, L2 ou Dropout pour limiter la complexité du modèle.
-
Validation croisée : utiliser des techniques comme k-fold pour vérifier la généralisation.
-
Augmentation des données : enrichir le dataset pour réduire l’effet du bruit.
-
Pruning ou simplification du modèle : réduire le nombre de paramètres ou de couches pour éviter l’excès de complexité.
Exemple concret : Un modèle de prédiction de défauts dans des équipements industriels entraîné sur un nombre limité de capteurs peut très bien prédire les défauts passés mais échouer lorsqu’un nouvel équipement est introduit. L’ajout de données provenant d’autres machines et la régularisation du modèle peuvent résoudre ce problème.
4. Équilibrer Model Fit, Underfitting et Overfitting
L’objectif est de trouver un équilibre optimal entre capacité et généralisation. Le modèle doit être assez complexe pour capturer les relations importantes mais pas trop pour éviter de mémoriser le bruit.
Stratégies clés :
-
Séparer les données en train, validation et test pour surveiller la performance à chaque étape.
-
Ajuster les hyperparamètres de manière itérative.
-
Surveiller les courbes d’apprentissage pour détecter des écarts importants entre les erreurs d’entraînement et de validation.
Exemple concret : Lors de la prédiction de la demande de billets de train, un modèle initial peut sous-prédire les pics saisonniers (underfitting). En ajoutant des features comme les jours fériés, la météo et les événements spéciaux, puis en régularisant un modèle complexe, on obtient un modèle qui prédit à la fois les tendances générales et les variations ponctuelles sans sur-apprentissage.
Conclusion
Comprendre le model fit et les notions d’underfitting et d’overfitting est indispensable pour construire des modèles de Machine Learning robustes et fiables. Une surveillance attentive, combinée à des ajustements de features, de modèles et d’hyper-paramètres, permet d’atteindre un équilibre entre précision et généralisation, garantissant des prédictions pertinentes sur de nouvelles données.
--
Ce billet de blog fait partie du cours AWS AI Practitioner en français disponible sur Udemy et sur la plateforme LeCloudFacile.com.
