Ultralytics YOLO27 : Rejoins la liste d'attente.
Licence YOLO
Retour au glossaire Ultralytics

Learning Rate

Le taux d’apprentissage détermine l’amplitude de chaque mise à jour des poids pendant l’entraînement. Découvre pourquoi des valeurs trop élevées entraînent une divergence et des valeurs trop faibles ralentissent l’apprentissage, ainsi que la montée en puissance, les calendriers de décroissance et le réglage.

Le taux d’apprentissage est l’hyperparamètre qui détermine l’amplitude du déplacement des poids d’un modèle à chaque étape d’entraînement. La descente de gradient calcule le gradient de la fonction de perte, qui indique la direction dans laquelle la perte augmente le plus rapidement, puis met à jour chaque poids selon w ← w − η × gradient, où η (êta) est le taux d’apprentissage. « Taille de pas » est un synonyme ; dans le code, le nom habituel est lr. Un taux bien choisi permet à un réseau neuronal de converger rapidement vers une bonne solution, tandis qu’un mauvais taux fait diverger l’entraînement ou le ralentit fortement. C’est pourquoi l’article de Leslie Smith sur les taux d’apprentissage cycliques le qualifie d’hyperparamètre le plus important à régler pour les réseaux profonds.

Trop élevé, trop faible ou juste comme il faut#

Le taux d’apprentissage impose un compromis entre vitesse et stabilité :

  • Trop élevé : Chaque étape dépasse le minimum. La perte oscille, fait des bonds ou augmente jusqu’à devenir NaN, et l’entraînement diverge.
  • Trop faible : Les poids bougent à peine à chaque étape. La perte diminue lentement, l’entraînement nécessite bien plus d’époques pour converger et une exécution avec un budget fixe se termine en situation de sous-apprentissage.
  • Bien choisi : La perte diminue régulièrement et se stabilise près d’un minimum.

Le script PyTorch ci-dessous minimise la perte w² à partir du même point de départ, avec quatre taux d’apprentissage :

import torch

# Minimize loss = w**2 (lowest at w = 0) from the same start with four learning rates
for lr in (0.01, 0.1, 0.9, 1.1):
    w = torch.tensor(5.0, requires_grad=True)
    optimizer = torch.optim.SGD([w], lr=lr)
    path = []
    for step in range(20):
        optimizer.zero_grad()
        loss = w**2
        loss.backward()
        optimizer.step()  # w = w - lr * gradient
        path.append(w.item())
    print(f"lr={lr}: first steps {[round(v, 2) for v in path[:3]]}, after 20 steps w={path[-1]:.3f}")

À 0.01, le poids passe péniblement de 5 à 3.338 en 20 étapes ; à 0.1, il atteint 0.058. À 0.9, il change de signe à chaque étape (−4.0, 3.2, −2.56), mais converge tout de même à 0.058, tandis qu’à 1.1 chaque étape dépasse davantage le minimum et le poids grimpe à 191.688. La descente de gradient sur une fonction quadratique reste stable uniquement si le taux d’apprentissage est inférieur à 2 divisé par la courbure de la perte, c’est-à-dire sa dérivée seconde. La courbure de w² est de 2 ; la limite est donc exactement 1.0, et un taux de 0.5 atteint le minimum en une étape. Dans un réseau réel, la direction où la perte est la plus raide impose une limite du même type. C’est pourquoi un taux adapté à un modèle ou à une taille de lot peut faire diverger un autre.

Calendriers de taux d’apprentissage#

L’entraînement conserve rarement le même taux du début à la fin. Un calendrier le fait varier au fil du temps :

  • Préchauffage : Le taux part d’une petite valeur et augmente progressivement pendant les premières époques ou itérations, ce qui évite que les gradients importants et erratiques des premières itérations déstabilisent l’entraînement.
  • Décroissance par paliers : Le taux est divisé par un facteur fixe, souvent 10, à certaines époques ou lorsque la perte de validation plafonne.
  • Décroissance linéaire et cosinus : Le taux diminue progressivement jusqu’à atteindre une petite valeur finale. Le recuit cosinus suit une demi-onde cosinusoïdale, et sa variante avec redémarrages à chaud ramène le taux à sa valeur élevée au début de chaque nouveau cycle.
  • Politiques cycliques et à cycle unique : Fais varier le taux entre une borne inférieure et une borne supérieure pendant l’entraînement.

Les grands pas au début rapprochent rapidement les poids d’une bonne région, et les petits pas à la fin leur permettent de se stabiliser dans un minimum plutôt que de le dépasser en oscillant. L’entraînement YOLO26 dans Ultralytics commence à lr0, effectue une montée en puissance sur warmup_epochs (3 par défaut), puis décroît de façon linéaire jusqu’à lr0 * lrf, ou selon une courbe cosinus avec cos_lr=True. Avec le optimizer="auto" par défaut, l’entraîneur choisit lui-même l’optimiseur et son taux initial : MuSGD à 0.01 pour les exécutions de plus de 10 000 itérations, et sinon AdamW avec un taux ajusté au nombre de classes ; lr0 ne s’applique donc que lorsque l’optimiseur est défini explicitement :

from ultralytics import YOLO

# Charger un modèle nano YOLO26 pré-entraîné
model = YOLO("yolo26n.pt")

# Un optimiseur explicite rend lr0 applicable ; le taux décroît jusqu’à lr0 * lrf selon une courbe cosinus
results = model.train(data="coco8.yaml", epochs=10, optimizer="SGD", lr0=0.01, lrf=0.01, cos_lr=True)

Choisir une valeur initiale#

Les valeurs initiales courantes sont de 0.01 à 0.1 pour la descente de gradient stochastique (SGD) avec momentum et de 0.001 pour l’optimiseur Adam, valeur par défaut proposée dans l’article sur Adam. Le réglage fin d’un modèle préentraîné utilise un taux inférieur à celui de l’entraînement à partir de zéro, car de grands pas écraseraient les caractéristiques qui permettent à l’apprentissage par transfert de fonctionner.

Le test de plage du taux d’apprentissage, issu du même article sur les taux d’apprentissage cycliques et intégré à fastai sous la forme de son outil de recherche du taux d’apprentissage, permet de trouver une bonne valeur en une seule courte exécution. Il augmente le taux après chaque mini-lot tout en enregistrant la perte ; la plage utile correspond à celle où la perte diminue le plus vite, avant de diverger.

  • Algorithme d’optimisation : la règle de mise à jour qui utilise le taux d’apprentissage. Les optimiseurs adaptatifs tels qu’Adam ajustent le pas de chaque poids en fonction de l’historique de son gradient, mais multiplient toujours chaque pas par un taux d’apprentissage global.
  • Momentum : un hyperparamètre distinct qui ajoute une fraction de la mise à jour précédente à la mise à jour actuelle, lissant ainsi la trajectoire et augmentant la taille de pas effective dans les directions cohérentes.
  • Décroissance des poids : un terme de régularisation qui rapproche les poids eux-mêmes de zéro à chaque pas, tandis que la décroissance du taux d’apprentissage réduit la taille du pas au fil du temps.
  • Taille du lot : le nombre d’exemples dont on calcule la moyenne pour chaque gradient. Les lots plus grands produisent des gradients moins bruités et tolèrent des taux plus élevés ; la règle de mise à l’échelle linéaire multiplie le taux d’apprentissage par k lorsque la taille du lot est multipliée par k.

Découvre les solutions

La vision par ordinateur dans le sport

La vision par ordinateur dans le sport

Découvre comment Ultralytics YOLO propulse la vision par ordinateur dans le sport grâce au suivi des joueurs et du ballon, aux analyses de performance, aux conseils d’entraînement et à la rééducation des athlètes.
En savoir plus
Vision par ordinateur pour les images aériennes

Vision par ordinateur pour les images aériennes

Transforme les images de drones et les images aériennes en informations exploitables en temps réel pour l’agriculture, l’aquaculture, la conservation et l’analyse géospatiale avec Ultralytics YOLO.
En savoir plus
Vision par ordinateur dans l’aérospatiale

Vision par ordinateur dans l’aérospatiale

Applique la vision par ordinateur dans l’aérospatiale avec Ultralytics YOLO pour l’inspection des aéronefs, la détection des corps étrangers sur les pistes, les opérations au sol des aéroports et la détection des défauts des matériaux composites.
En savoir plus
La vision par ordinateur dans la sécurité

La vision par ordinateur dans la sécurité

Protège chaque site avec les modèles Ultralytics YOLO. L’IA visuelle permet la surveillance des périmètres, la détection des menaces, la reconnaissance des plaques d’immatriculation et la sécurité au travail.
En savoir plus
La vision par ordinateur en robotique

La vision par ordinateur en robotique

Donne plus de capacités à tes machines grâce aux modèles Ultralytics YOLO. Dans la robotique, l’IA visuelle permet la navigation autonome, la perception, le suivi des objets et le contrôle en temps réel.
En savoir plus
La vision par ordinateur dans la logistique

La vision par ordinateur dans la logistique

Optimise la logistique avec les modèles Ultralytics YOLO. La vision par IA permet d’inspecter les colis, de les trier, de suivre les véhicules et de surveiller la sécurité des entrepôts en temps réel.
En savoir plus
La vision par ordinateur dans le commerce de détail

La vision par ordinateur dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA permet de suivre les stocks, de surveiller les rayons, de gérer les files d’attente et de mieux comprendre les clients.
En savoir plus
La vision par ordinateur dans le secteur de la santé

La vision par ordinateur dans le secteur de la santé

Crée des solutions de santé avec les modèles Ultralytics YOLO. La vision par IA dans le secteur de la santé accélère l’imagerie médicale, améliore les diagnostics et facilite la surveillance des patients.
En savoir plus
La vision par ordinateur dans l’industrie manufacturière

La vision par ordinateur dans l’industrie manufacturière

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA améliore le contrôle qualité, la détection des défauts, le respect des règles concernant les EPI et l’automatisation des chaînes de montage.
En savoir plus
La vision par ordinateur dans l’automobile

La vision par ordinateur dans l’automobile

Mets la vision par ordinateur au service de l’automobile avec les modèles Ultralytics YOLO. La vision par IA renforce la sécurité routière, l’aide à la conduite et l’automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Vision par ordinateur dans l’agriculture

Vision par ordinateur dans l’agriculture

Fais entrer l’IA de vision dans l’agriculture intelligente avec les modèles Ultralytics YOLO. Optimise le suivi des cultures et du bétail ainsi que l’agriculture de précision pour obtenir des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble l’avenir de l’IA !

Commence ton parcours vers l’avenir de l’apprentissage automatique