Le lissage des étiquettes est une technique de régularisation utilisée en apprentissage automatique et en apprentissage profond pour empêcher un modèle de devenir trop confiant dans ses prédictions. Au lieu d'entraîner un modèle à produire une probabilité de 1,0 pour la classe correcte et de 0,0 pour toutes les autres (connue sous le nom d'encodage one-hot), le lissage des étiquettes remplace ces cibles dures par une version adoucie. Cela est réalisé en attribuant une petite quantité de masse de probabilité à toutes les classes incorrectes, généralement tirée d'une distribution uniforme. La technique a été popularisée dans le contexte de l'entraînement des réseaux de neurones, en particulier pour la classification d'images et les tâches de traitement du langage naturel, et est devenue un composant standard dans de nombreux pipelines d'entraînement modernes, y compris ceux pour les grands modèles de langage.
L'idée centrale est de réduire la surconfiance du modèle, qui peut conduire à une mauvaise généralisation sur des données non vues. Les cibles dures encouragent le modèle à pousser ses logits de sortie à des valeurs extrêmes, le rendant fragile et sensible au bruit. En lissant les cibles, le modèle est encouragé à produire des distributions de probabilité plus modérées, ce qui améliore souvent la calibration et la robustesse. Le lissage des étiquettes est une méthode simple mais efficace qui nécessite un surcoût computationnel minimal et peut être facilement intégré dans les cadres d'entraînement existants.
Formulation mathématique
Dans une tâche de classification standard avec \(K\) classes, l'étiquette de vérité terrain pour un échantillon est représentée comme un vecteur one-hot \(y\), où \(y_c = 1\) pour la classe correcte \(c\) et \(y_i = 0\) pour toutes les autres classes \(i \neq c\). Le modèle produit une distribution de probabilité \(p\) sur les classes, généralement obtenue en appliquant une fonction softmax aux logits. La perte d'entraînement est généralement l'entropie croisée entre \(y\) et \(p\).
Le lissage des étiquettes modifie la distribution cible \(y\) en \(y^{LS}\), définie comme :
\[ y^{LS}_i = (1 - \epsilon) \cdot y_i + \frac{\epsilon}{K} \]
où \(\epsilon\) est un paramètre de lissage entre 0 et 1. Pour la classe correcte, la cible devient \(1 - \epsilon + \frac{\epsilon}{K}\), et pour chaque classe incorrecte, elle devient \(\frac{\epsilon}{K}\). Cela garantit que la somme des probabilités cibles reste égale à 1. La perte d'entropie croisée est ensuite calculée en utilisant \(y^{LS}\) au lieu de \(y\).
Un choix courant pour \(\epsilon\) est 0,1, mais les valeurs peuvent varier de 0,01 à 0,2 selon la tâche et le jeu de données. Le paramètre contrôle le degré d'adoucissement ; un \(\epsilon\) plus grand résulte en une distribution cible plus uniforme, tandis que \(\epsilon = 0\) retrouve les étiquettes dures originales.
Contexte historique
Le concept de lissage des étiquettes a des racines dans des travaux antérieurs sur la régularisation et la calibration des probabilités. Un précurseur notable est l'utilisation de « cibles douces » dans la distillation de modèles, où un petit modèle est entraîné à imiter les probabilités de sortie d'un modèle plus grand, pré-entraîné. Cependant, le lissage des étiquettes en tant que technique autonome a été formellement introduit et popularisé dans un article de 2016 par des chercheurs de Google DeepMind (alors Google Brain), intitulé « Rethinking the Inception Architecture for Computer Vision ». Les auteurs, dont Christian Szegedy, Vincent Vanhoucke, Sergey Ioffe, Jonathon Shlens et Zbigniew Wojna, l'ont proposé comme un moyen d'améliorer l'entraînement des réseaux convolutifs profonds pour la classification d'images.
Depuis, le lissage des étiquettes a été largement adopté dans divers domaines. Il s'est avéré particulièrement efficace pour entraîner des modèles à grande échelle, y compris les architectures basées sur les transformeurs utilisées dans la IA générative et le traitement du langage naturel. La technique est désormais un composant standard dans de nombreuses bibliothèques d'entraînement open source et est souvent utilisée par défaut dans les modèles de pointe.
Avantages et mécanismes
Le lissage des étiquettes offre plusieurs avantages qui contribuent à améliorer les performances du modèle :
- Prévient la surconfiance : En adoucissant les cibles, le modèle est découragé d'attribuer des probabilités extrêmement élevées à une seule classe. Cela réduit le risque de surajustement aux données d'entraînement et améliore la capacité du modèle à généraliser.
- Améliore la calibration : Les modèles entraînés avec le lissage des étiquettes ont tendance à avoir des probabilités mieux calibrées, ce qui signifie que leurs scores de confiance prédits s'alignent plus étroitement avec la précision réelle. Cela est particulièrement important dans les applications où des seuils de décision sont utilisés.
- Effet de régularisation : La technique agit comme une forme de régularisation, similaire aux stratégies de abandon ou de initialisation des poids, en ajoutant une petite quantité de bruit à la distribution cible. Cela peut aider le modèle à apprendre des caractéristiques plus robustes.
- Paysage de perte plus lisse : Le lissage des étiquettes peut rendre le paysage d'optimisation plus lisse, ce qui peut faciliter une convergence plus rapide et réduire la probabilité de rester bloqué dans des minima abrupts.
La recherche a également montré que le lissage des étiquettes peut améliorer la qualité des représentations apprises. Par exemple, dans les tâches de vision par ordinateur, les modèles entraînés avec le lissage des étiquettes produisent souvent des plongements de caractéristiques plus séparables et mieux adaptés à l'apprentissage par transfert.
Applications dans l'IA moderne
Le lissage des étiquettes est devenu une technique omniprésente dans l'entraînement des systèmes d'IA modernes. Dans le domaine des grands modèles de langage, il est fréquemment utilisé pendant le pré-entraînement et l'ajustement fin. Par exemple, des modèles comme GPT et les variantes de BERT ont incorporé le lissage des étiquettes pour améliorer leur robustesse et leur calibration. La technique est également appliquée dans les modèles séquence à séquence pour des tâches telles que la traduction automatique et le résumé de texte.
Dans l'apprentissage par renforcement et les domaines connexes comme le RLIAF (apprentissage par renforcement à partir de retours d'IA), le lissage des étiquettes peut être utilisé pour adoucir les signaux de récompense ou les distributions cibles, aidant à stabiliser l'entraînement. De plus, il est souvent combiné avec d'autres méthodes de régularisation comme le augmentation de données et le écrêtage de gradient pour atteindre des performances de pointe.
Relation avec d'autres techniques
Le lissage des étiquettes est conceptuellement lié à plusieurs autres méthodes en apprentissage automatique :
- Distillation de connaissances : Dans la distillation, un modèle étudiant est entraîné sur les sorties douces d'un modèle enseignant. Le lissage des étiquettes peut être vu comme une forme simple de distillation où l'enseignant est une distribution uniforme.
- Pénalité de confiance : C'est une technique de régularisation qui ajoute un terme de pénalité à la fonction de perte pour décourager les prédictions trop confiantes. Le lissage des étiquettes obtient un effet similaire en modifiant directement les cibles.
- Mixup et CutMix : Ce sont des techniques de augmentation de données qui créent de nouveaux échantillons d'entraînement en interpolant entre des paires d'exemples et leurs étiquettes. Le lissage des étiquettes peut être appliqué en plus de ces méthodes pour une régularisation supplémentaire.
- Mise à l'échelle de température : Dans la mise à l'échelle de température, les logits sont divisés par un paramètre de température avant d'appliquer softmax, ce qui affecte la netteté de la distribution de sortie. Le lissage des étiquettes opère du côté des cibles, tandis que la mise à l'échelle de température opère du côté des prédictions.
Considérations pratiques
Lors de l'implémentation du lissage des étiquettes, plusieurs aspects pratiques doivent être pris en compte :
- Choix d'epsilon : Le paramètre de lissage \(\epsilon\) est un hyperparamètre qui doit être ajusté. Une valeur par défaut courante est 0,1, mais les valeurs optimales peuvent varier. Pour les tâches avec un grand nombre de classes, un \(\epsilon\) plus petit peut être approprié pour éviter un sur-lissage.
- Interaction avec les fonctions de perte : Le lissage des étiquettes est généralement appliqué avec la perte d'entropie croisée. Cependant, il peut être adapté à d'autres fonctions de perte, comme la perte focale ou les fonctions de perte utilisées dans l'apprentissage métrique, bien que la formulation puisse nécessiter un ajustement.
- Impact sur les logits : Un effet secondaire connu du lissage des étiquettes est qu'il peut entraîner des logits de plus grande magnitude, ce qui peut affecter l'interprétation des scores de confiance. Certaines études ont noté que cela peut entraîner des problèmes avec la distillation de connaissances, car les sorties adoucies peuvent être moins informatives.
- Implémentation : En pratique, le lissage des étiquettes est souvent implémenté en modifiant la fonction de perte plutôt que les vecteurs cibles, pour éviter de stocker la distribution lissée complète. Cela est computationnellement efficace et facile à intégrer dans les cadres existants.
Recherche et extensions
Depuis son introduction, le lissage des étiquettes a fait l'objet de recherches approfondies. Des études ont analysé ses propriétés théoriques, montrant qu'il peut être interprété comme une forme de régularisation d'entropie ou comme un moyen d'incorporer des connaissances préalables sur le bruit des étiquettes. Les extensions incluent le lissage adaptatif des étiquettes, où le paramètre de lissage est appris pendant l'entraînement, et le lissage dépendant de la classe, où différentes classes reçoivent différents niveaux de lissage.
Dans le contexte des modèles basés sur les transformeurs, le lissage des étiquettes a montré qu'il améliore la stabilité de l'entraînement, surtout lorsqu'il est combiné avec la normalisation de couche et les connexions de réseaux résiduels. Il est également utilisé en conjonction avec les programmes de taux d'apprentissage et l'optimiseur Adam pour atteindre des performances optimales.
Limites et critiques
Malgré son utilisation répandue, le lissage des étiquettes n'est pas sans limites. Certains chercheurs ont souligné qu'il peut dégrader les performances sur des tâches où le modèle doit faire des prédictions très confiantes, comme certains types de classification avec des frontières de décision claires. De plus, le lissage des étiquettes peut obscurcir l'incertitude réelle du modèle, rendant plus difficile l'interprétation des probabilités de sortie dans des applications à enjeux élevés.
Une autre critique est que le lissage des étiquettes peut ne pas toujours améliorer la calibration, et dans certains cas, il peut conduire à une pire calibration par rapport à d'autres méthodes comme la mise à l'échelle de température. L'efficacité du lissage des étiquettes dépend également du jeu de données et de l'architecture du modèle, et il peut ne pas apporter de bénéfices dans tous les scénarios.
Conclusion
Le lissage des étiquettes reste une technique de régularisation fondamentale et largement utilisée dans l'intelligence artificielle. Sa simplicité, son efficacité et son faible coût computationnel en ont fait un choix par défaut dans de nombreux pipelines d'entraînement. Bien qu'il présente certaines limites, ses avantages en termes de généralisation et de calibration l'emportent souvent sur les inconvénients, en particulier dans les applications d'apprentissage profond à grande échelle. Alors que la recherche se poursuit, de nouvelles variations et raffinements du lissage des étiquettes sont susceptibles d'émerger, renforçant encore son rôle dans la boîte à outils de l'apprentissage automatique.