Label Smoothing
Le lissage des étiquettes mélange chaque cible d’entraînement one-hot avec une distribution uniforme, ce qui limite l’excès de confiance et améliore la calibration des classificateurs.
Le lissage des étiquettes est une technique de régularisation pour les modèles de classification en apprentissage profond, qui remplace chaque cible one-hot stricte des données d’entraînement par une version assouplie : la majeure partie de la probabilité reste attribuée à la classe correcte, tandis qu’une petite part, définie par un facteur de lissage ε, est répartie uniformément entre toutes les classes. L’entraînement sur ces cibles assouplies empêche un réseau neuronal de pousser ses logits vers des valeurs extrêmes pour atteindre une confiance de 100 %, ce qui réduit le surapprentissage et produit des probabilités mieux calibrées. Szegedy et al. ont décrit cette méthode dans l’article sur Inception-v3, en utilisant ε = 0.1 pour les 1 000 classes d’ImageNet. C’est désormais une option courante pour entraîner des modèles de classification d’images, de traduction et de reconnaissance vocale.
Fonctionnement du lissage des étiquettes#
Avec K classes et un facteur de lissage ε, chaque cible devient (1 − ε) · y + ε / K, où y est l’étiquette one-hot. Pour trois classes et ε = 0.1, l’étiquette [1, 0, 0] devient environ [0.933, 0.033, 0.033]. Avec une cible stricte, l’entropie croisée continue de diminuer à mesure que le logit correct s’éloigne des autres. La fonction de perte récompense donc des écarts de logits toujours plus grands et la sortie softmax sature. Avec une cible lissée, la perte est minimale pour un écart fini de ln((1 − ε + ε / K) / (ε / K)), soit environ 3.3 dans cet exemple, puis augmente au-delà. Les gradients ramènent ainsi les prédictions trop confiantes vers plus de modération. Les modèles de détection Ultralytics YOLO26 entraînent leurs prédictions de classe avec un type de cible assouplie apparenté : l’assignateur aligné sur la tâche met à l’échelle la cible de classe de chaque ancre positive en fonction de l’alignement entre son score prédit, sa boîte et l’objet. La plupart des cibles sont donc inférieures à 1.
La CrossEntropyLoss de PyTorch applique la formule via son argument label_smoothing :
import torch
from torch import nn
# The correct class is index 0 of three; hard and smoothed versions of the same loss
target = torch.tensor([0])
hard_loss = nn.CrossEntropyLoss()
smooth_loss = nn.CrossEntropyLoss(label_smoothing=0.1)
# Score the correct class increasingly far above the other two
for gap in [1.0, 3.0, 6.0, 12.0]:
logits = torch.tensor([[gap, 0.0, 0.0]])
hard = hard_loss(logits, target).item()
smooth = smooth_loss(logits, target).item()
print(f"Logit gap {gap:>4}: hard loss {hard:.3f}, smoothed loss {smooth:.3f}")La perte stricte passe de 0.551 à 0.000 lorsque l’écart augmente, tandis que la perte lissée atteint un minimum de 0.295 pour un écart proche de 3, puis remonte à 0.800 pour un écart de 12. Une confiance extrême coûte donc désormais plus cher qu’une confiance modérée.
Effets sur le calibrage et les caractéristiques apprises#
Müller, Kornblith et Hinton ont constaté que le lissage des étiquettes améliore le calibrage du modèle, c’est-à-dire que les probabilités prédites reflètent la fréquence à laquelle les prédictions sont réellement correctes. Ils ont également montré qu’il rassemble les caractéristiques de la pénultième couche de chaque classe en groupes compacts et régulièrement espacés. Cette compression efface les informations indiquant à quelles mauvaises classes une image ressemble. Les enseignants entraînés avec le lissage des étiquettes ont aussi beaucoup moins bien transféré leurs connaissances aux élèves par distillation des connaissances.
Applications concrètes#
Le lissage des étiquettes est surtout utile lorsque les étiquettes sont bruitées, ambiguës ou nombreuses.
- Classification à l’échelle d’ImageNet : ImageNet contient des images mal étiquetées et des photos avec plusieurs objets valides. Les recettes d’entraînement des réseaux convolutifs et des Vision Transformers, dont DeiT, utilisent ε = 0.1 afin que le modèle n’accorde jamais une certitude absolue à une étiquette douteuse.
- Traduction automatique : le Transformer original utilisait un lissage des étiquettes avec ε = 0.1. Les auteurs ont indiqué qu’il augmentait la perplexité, car le modèle apprenait à être moins sûr de lui, tout en améliorant la précision et le score BLEU.
- Analyse d’images médicales : les annotateurs experts ne sont souvent pas d’accord sur les scans limites. Les cibles lissées empêchent un classificateur diagnostique de considérer chaque étiquette contestée comme certaine, et des scores mieux calibrés rendent les seuils de triage clinique plus fiables.
Lissage des étiquettes et techniques apparentées#
- Distillation des connaissances : la distillation utilise elle aussi des cibles souples, issues des prédictions d’un modèle enseignant, qui indiquent ainsi quelles classes se ressemblent. Les cibles du lissage des étiquettes attribuent la même faible part à toutes les classes incorrectes.
- Mise à l’échelle de la température : elle calibre après coup un modèle entraîné en divisant ses logits par une constante apprise, sans toucher aux poids.
- Couche Dropout : Dropout régularise le réseau en mettant à zéro des activations aléatoires pendant l’entraînement, tandis que le lissage des étiquettes régularise les cibles d’entraînement.
- CutMix : CutMix et mixup sont des méthodes d’augmentation de données qui mélangent deux images d’entraînement et leurs étiquettes dans les mêmes proportions ; la cible assouplie provient donc directement de l’entrée. CutMix pondère chaque étiquette selon la surface couverte par le fragment ajouté, tandis que mixup pondère les pixels et les étiquettes avec un facteur unique tiré d’une loi bêta.










