Underfitting
Apprends comment identifier et résoudre le sous-apprentissage (underfitting) en apprentissage automatique. Explore les causes, les indicateurs et comment optimiser les modèles Ultralytics YOLO26 pour une meilleure précision.
Le sous-apprentissage (underfitting) se produit lorsqu'un modèle de machine learning est trop simple ou manque de capacité pour capturer les tendances et les motifs sous-jacents dans les données d'entraînement. Conceptuellement, cela revient à essayer d'ajuster une ligne droite à des points de données qui forment une courbe distincte ; le modèle ne parvient pas à saisir la complexité de la relation entre les entrées et les sorties. Étant donné que le modèle n'a pas appris les données efficacement, il présente de piètres performances non seulement sur l'ensemble d'entraînement mais aussi sur des données de validation inédites, ce qui entraîne une faible précision prédictive. Ce phénomène est souvent le résultat d'un biais en IA élevé, où l'algorithme formule des hypothèses trop simplistes sur la fonction cible.
Causes et indicateurs#
Plusieurs facteurs peuvent entraîner un modèle en sous-apprentissage. La cause la plus fréquente est l'utilisation d'une architecture de modèle insuffisamment complexe pour la tâche à accomplir, comme l'application de la régression linéaire à des données non linéaires. Une durée d'entraînement insuffisante, où le modèle ne dispose pas d'assez d'époques pour converger, empêche également un apprentissage adéquat. En outre, une régularisation excessive — une technique généralement utilisée pour prévenir le problème inverse — peut contraindre exagérément le modèle, l'empêchant de capturer des caractéristiques importantes.
Les ingénieurs peuvent identifier le sous-apprentissage en surveillant les fonctions de perte pendant l'entraînement. Si l'erreur d'entraînement et l'erreur de validation restent élevées et ne diminuent pas de manière significative, le modèle est probablement en situation de sous-apprentissage. Contrairement à une ingénierie des caractéristiques efficace, qui aide les modèles à comprendre les données, fournir un nombre insuffisant de caractéristiques peut également priver le modèle des informations nécessaires.
Sous-apprentissage vs. Surapprentissage#
Il est crucial de distinguer le sous-apprentissage de son pendant, le surapprentissage. Ces deux concepts représentent les deux extrêmes du compromis biais-variance.
- Sous-apprentissage (biais élevé) : Le modèle est trop rigide. Il affiche de mauvaises performances à la fois sur les données d'entraînement et sur les données de test car il n'a pas appris le signal de base.
- Surapprentissage (variance élevée) : Le modèle est trop flexible. Il mémorise les données d'entraînement, y compris le bruit, obtenant des résultats exceptionnels lors de l'entraînement mais échouant à généraliser sur de nouveaux exemples.
Trouver le juste équilibre entre ces deux extrêmes est l'objectif principal de l'optimisation des modèles.
Applications concrètes#
Comprendre le sous-apprentissage est vital pour développer des systèmes d'IA fiables dans diverses industries.
- Conduite autonome : Dans le contexte des véhicules autonomes, un modèle de détection d'objets en sous-apprentissage peut ne pas réussir à faire la distinction entre un piéton et un lampadaire dans des environnements urbains complexes. Étant donné que le modèle manque de paramètres pour apprendre les subtiles différences visuelles, il compromet la sécurité de l'IA.
- Diagnostics médicaux : Lors de l'application de l'analyse d'images médicales pour détecter des anomalies telles que des tumeurs, un modèle trop simple risque de rater de petites croissances ou des excrescences irrégulières. Si le réseau de neurones est trop peu profond, il ne peut pas apprendre les textures complexes requises pour obtenir une sensibilité et une spécificité élevées, ce qui conduit à des diagnostics manqués.
Traiter le sous-apprentissage avec du code#
En vision par ordinateur, le sous-apprentissage se produit souvent lors de l'utilisation d'une variante de modèle trop petite pour la difficulté de la tâche (par exemple, la détection de petits objets dans des images de drone à haute résolution). L'exemple Python suivant montre comment passer d'un modèle plus petit à un modèle plus grand et plus performant en utilisant la bibliothèque ultralytics pour résoudre un éventuel sous-apprentissage.
from ultralytics import YOLO
# If 'yolo26n.pt' (Nano) is underfitting and yielding low accuracy,
# upgrade to a model with higher capacity like 'yolo26l.pt' (Large).
model = YOLO("yolo26l.pt")
# Train the larger model.
# Increasing epochs also helps the model converge if it was previously underfitting.
results = model.train(data="coco8.yaml", epochs=100, imgsz=640)En passant à un modèle Ultralytics YOLO26 plus grand et en garantissant une durée d'entraînement adéquate, le système acquiert les paramètres nécessaires pour apprendre des schémas complexes, atténuant ainsi efficacement le sous-apprentissage. Pour vérifier que ton modèle ne subit plus de sous-apprentissage, évalue-le toujours par rapport à un jeu de données de test robuste. Pour gérer les jeux de données et suivre les expériences afin de repérer le sous-apprentissage le plus tôt possible, la Plateforme Ultralytics offre des outils complets de visualisation et d'analyse.






