Learning Rate
Découvre comment le taux d’apprentissage influe sur l’entraînement des modèles. Apprends à optimiser la taille des pas pour qu’Ultralytics YOLO26 atteigne des performances SOTA en détection d’objets et dans d’autres domaines.
Le taux d’apprentissage est une configuration critique de réglage des hyperparamètres qui détermine la taille du pas effectué par un modèle au cours du processus d’optimisation. Dans le contexte de l’entraînement d’un réseau neuronal, il contrôle l’ampleur de la mise à jour des poids internes du modèle en réponse à l’erreur estimée chaque fois que le modèle traite un lot de données. Imagine-le comme une personne qui descend une montagne vers une vallée (le point où l’erreur est la plus faible) : le taux d’apprentissage détermine la longueur de sa foulée. Si la foulée est trop grande, elle risque de franchir complètement la vallée et de manquer le fond. Si elle est trop petite, atteindre la destination peut prendre un temps impraticablement long.
Le dilemme de Boucle d’or en optimisation#
Trouver le taux d’apprentissage optimal est souvent décrit comme un exercice d’équilibre dans les workflows de machine learning. L’objectif est de minimiser la fonction de perte, qui mesure la différence entre les prédictions du modèle et la vérité terrain. Ce processus repose largement sur un algorithme d’optimisation tel que la descente de gradient stochastique (SGD) ou l’optimiseur Adam pour parcourir le paysage de la perte.
- Taux d’apprentissage trop élevé : Si la valeur est définie trop haut, les mises à jour des poids du modèle seront brutales. Cela peut provoquer le phénomène de « dépassement », où le modèle ne parvient pas à converger vers une solution et oscille fortement ou diverge à la place. Cette instabilité peut parfois déclencher un problème de gradient explosif, rendant le processus d’entraînement inutile.
- Taux d’apprentissage trop faible : À l’inverse, une taille de pas extrêmement petite garantit que le modèle progresse prudemment vers le minimum, mais peut provoquer du sous-apprentissage, car le processus d’entraînement devient extrêmement lent. Le modèle peut effectivement rester bloqué dans un minimum local ou nécessiter des milliers d’époques supplémentaires pour apprendre des motifs simples, ce qui gaspille des ressources informatiques. Les chercheurs consultent souvent la documentation de PyTorch sur l’optimisation pour comprendre comment les différents algorithmes interagissent avec ces valeurs.
Applications concrètes#
L’impact des ajustements du taux d’apprentissage est évident dans divers secteurs à forts enjeux où des tâches de vision par ordinateur sont déployées.
-
Systèmes de conduite autonome : Lors du développement de véhicules autonomes, les ingénieurs utilisent de vastes jeux de données pour entraîner des modèles à la détection d’objets afin d’identifier les piétons et les panneaux de signalisation. Lorsqu’ils appliquent l’apprentissage par transfert à un modèle pré-entraîné comme YOLO26, les développeurs utilisent généralement un taux d’apprentissage bien plus faible que lors de l’entraînement initial. Cet « ajustement fin » permet au modèle d’apprendre les particularités d’environnements de conduite spécifiques (par exemple, les routes enneigées par rapport aux autoroutes désertiques) sans effacer les capacités générales d’extraction de caractéristiques qu’il possède déjà.
-
Imagerie diagnostique médicale : Dans l’analyse d’images médicales, notamment pour détecter des tumeurs sur des examens IRM, la précision est primordiale. Un taux d’apprentissage élevé risque ici de faire ignorer au modèle de subtiles différences de texture permettant de distinguer les tissus malins des tissus bénins. Les praticiens utilisent souvent une technique appelée « warmup du taux d’apprentissage », qui consiste à augmenter progressivement le taux de zéro jusqu’à une valeur cible afin de stabiliser les premières étapes de l’entraînement et de garantir que les poids du réseau neuronal se stabilisent dans une configuration fiable avant le début d’un apprentissage intensif. Tu peux en savoir plus sur ces stratégies dans le cours accéléré de machine learning de Google.
Différencier les termes associés#
Il est important de distinguer le taux d’apprentissage des autres paramètres d’entraînement, car ils sont souvent configurés dans les mêmes fichiers de configuration, tout en ayant des fonctions différentes :
- Taux d’apprentissage et taille de lot : Alors que le taux d’apprentissage contrôle l’ampleur de la mise à jour, la taille de lot détermine le nombre d’échantillons d’entraînement traités avant qu’une mise à jour ne se produise. Les deux sont fortement liés : souvent, lorsqu’on augmente la taille de lot, il faut également augmenter le taux d’apprentissage pour maintenir l’efficacité de l’entraînement, un concept abordé dans les articles sur l’entraînement avec de grands lots.
- Taux d’apprentissage et décroissance : La décroissance désigne une stratégie consistant à réduire systématiquement le taux d’apprentissage au fil du temps. Un ordonnanceur peut diminuer le taux d’un facteur 10 toutes les 30 époques. Cela aide le modèle à effectuer de grands sauts conceptuels au début, puis à affiner sa précision par des pas plus petits vers la fin de l’entraînement. Il s’agit d’une fonctionnalité standard du package Python Ultralytics.
Définir le taux d’apprentissage dans Ultralytics YOLO#
Avec les frameworks modernes, tu peux facilement ajuster le taux d’apprentissage initial (lr0) et la fraction finale du taux d’apprentissage (lrf). Voici un exemple de configuration utilisant le client compatible avec l’Ultralytics Platform pour une exécution d’entraînement personnalisée.
from ultralytics import YOLO
# Load the YOLO26 model (latest state-of-the-art architecture)
model = YOLO("yolo26n.pt")
# Train the model with a custom initial learning rate
# lr0=0.01 sets the initial rate
# lrf=0.01 sets the final learning rate to (lr0 * lrf)
results = model.train(data="coco8.yaml", epochs=10, lr0=0.01, lrf=0.01)Pour les utilisateurs avancés, des techniques comme le LR Finder (popularisé par fast.ai) peuvent automatiser la recherche de la meilleure valeur initiale en exécutant une courte époque d’essai pendant laquelle le taux augmente de manière exponentielle jusqu’à ce que la perte diverge. Maîtriser cet hyperparamètre est souvent la clé pour obtenir des performances SOTA (état de l’art) dans tes projets d’IA.









