Régularisation
Empêchez le surajustement et améliorez la généralisation du modèle grâce à des techniques de régularisation telles que L1, L2, l'abandon et l'arrêt anticipé. En savoir plus !
La régularisation est un ensemble de techniques utilisées dans l'apprentissage machine (ML) pour prévenir un problème courant connu sous le nom de surajustement. Lorsqu'un modèle s'adapte trop bien, il apprend trop bien les données d'apprentissage, y compris le bruit et les fluctuations aléatoires, ce qui a un impact négatif sur sa capacité à généraliser et à faire des prédictions précises sur de nouvelles données inédites. La régularisation consiste à ajouter une pénalité pour la complexité du modèle à la fonction de perte, ce qui décourage le modèle d'apprendre des modèles trop complexes. Cela permet de créer un modèle plus simple et plus généralisable qui donne de meilleurs résultats sur les données d'apprentissage et de validation.
Techniques de régularisation courantes
Il existe plusieurs techniques de régularisation largement utilisées qui permettent d'améliorer la performance et la robustesse des modèles :
- Régularisation L1 et L2: Ce sont les formes les plus courantes de régularisation. Elles ajoutent une pénalité à la fonction de perte en fonction de la taille des poids du modèle. La régularisation L1 (Lasso) tend à réduire les poids des caractéristiques les moins importantes à exactement zéro, ce qui permet d'effectuer une sélection efficace des caractéristiques. La régularisation L2 (Ridge ou Weight Decay) force les poids à être petits mais rarement nuls. Pour approfondir les différences mathématiques, il est possible de consulter des ressources telles que les notes du cours Stanford CS229.
- Couche d'abandon: Cette technique est spécifique aux réseaux neuronaux. Au cours de la formation, elle met aléatoirement à zéro une fraction des activations des neurones à chaque étape de mise à jour. Cela empêche les neurones de trop coadapter et oblige le réseau à apprendre des caractéristiques plus robustes. Le concept a été introduit dans un document de recherche très influent.
- Augmentation des données: En augmentant artificiellement la taille et la diversité des données de formation, l'augmentation des données aide le modèle à devenir plus invariant aux changements mineurs. Les techniques courantes comprennent la rotation, le recadrage, la mise à l'échelle et le changement de couleur des images. Ultralytics offre des méthodes intégrées d'augmentation des données YOLO pour améliorer la robustesse du modèle.
- Arrêt précoce: Il s'agit d'une méthode pratique qui consiste à surveiller les performances du modèle sur un ensemble de validation pendant la formation. Le processus de formation est interrompu lorsque les performances de validation cessent de s'améliorer, ce qui empêche le modèle de commencer à se suradapter dans les époques ultérieures. Un guide pratique sur la mise en œuvre de l'arrêt anticipé est disponible dans la documentation PyTorch.
Applications dans le monde réel
La régularisation est fondamentale pour développer des modèles d'apprentissage profond (DL) efficaces dans divers domaines.
- Vision par ordinateur : Dans les modèles de détection d'objets comme Ultralytics YOLO, la régularisation est cruciale pour la généralisation à partir d'ensembles de données comme COCO vers des applications du monde réel. Par exemple, dans les solutions d'IA pour l'automobile, la régularisation L2 et l'abandon aident un détecteur de panneaux de signalisation à fonctionner de manière fiable dans des conditions d'éclairage et météorologiques variées, en l'empêchant de mémoriser les exemples spécifiques vus pendant la formation.
- Traitement du langage naturel (NLP) : Les grands modèles de langage (LLM) sont sujets à des ajustements excessifs en raison de leur grand nombre de paramètres. Dans des applications telles que la traduction automatique, le dropout est utilisé dans les architectures de transformateurs pour s'assurer que le modèle apprend les règles grammaticales et les relations sémantiques plutôt que de simplement mémoriser des paires de phrases spécifiques à partir de ses données d'apprentissage.
Régularisation et autres concepts
Il est important de différencier la régularisation d'autres concepts connexes en ML :
- Régularisation et normalisation: La normalisation est une technique de prétraitement des données qui met à l'échelle les caractéristiques d'entrée dans une plage standard (par exemple, 0 à 1). Elle garantit qu'aucune caractéristique ne domine le processus d'apprentissage en raison de son échelle. La régularisation, en revanche, est une technique qui limite la complexité du modèle pendant l'apprentissage afin d'éviter un surajustement. Bien que les deux techniques améliorent les performances du modèle, la normalisation se concentre sur les données, tandis que la régularisation se concentre sur le modèle lui-même. La normalisation par lots est une technique de normalisation par couches qui produit également un léger effet de régularisation.
- Régularisation et réglage des hyperparamètres: Les techniques de régularisation ont leurs propres hyperparamètres, tels que la force de régularisation (lambda) dans L1/L2 ou le taux d'abandon. Le réglage des hyperparamètres est le processus de recherche des valeurs optimales pour ces paramètres, souvent automatisé avec des outils comme la classe Ultralytics Tuner. En bref, vous utilisez le réglage des hyperparamètres pour trouver la meilleure façon d'appliquer la régularisation. Des plateformes comme Ultralytics HUB peuvent aider à gérer les expériences nécessaires à ce processus.