YOLO Vision 2026 :
Retour au glossaire Ultralytics

Stochastic Gradient Descent (SGD)

Apprends comment la descente de gradient stochastique (SGD) optimise les modèles d'apprentissage automatique. Découvre comment SGD propulse Ultralytics YOLO26 pour un entraînement IA plus rapide et plus efficace.

Le Stochastic Gradient Descent (SGD) est un algorithme d'optimisation puissant largement utilisé en apprentissage automatique pour entraîner des modèles efficacement, en particulier lors du traitement de grands ensembles de données. Au fond, le SGD est une variante de la méthode traditionnelle de descente de gradient, conçue pour accélérer le processus d'apprentissage en mettant à jour les paramètres du modèle plus fréquemment. Au lieu de calculer l'erreur pour l'ensemble du jeu de données avant d'effectuer une seule mise à jour — comme c'est le cas avec la descente de gradient par lot traditionnelle — le SGD met à jour les poids du modèle en utilisant un seul exemple d'entraînement choisi au hasard à la fois. Cette nature « stochastique » ou aléatoire introduit du bruit dans le chemin d'optimisation, ce qui peut aider le modèle à échapper aux solutions sous-optimales et à converger plus rapidement sur des ensembles de données massifs où le traitement de toutes les données en une fois est informatiquement prohibitif.

Comment fonctionne le Stochastic Gradient Descent#

L'objectif principal de tout processus d'entraînement est de minimiser une fonction de perte, qui quantifie la différence entre les prédictions du modèle et les valeurs cibles réelles. Le SGD y parvient grâce à un cycle itératif. Tout d'abord, l'algorithme sélectionne un point de données aléatoire parmi les données d'entraînement. Il effectue ensuite une passe avant pour générer une prédiction et calcule l'erreur. À l'aide de la rétropropagation, l'algorithme calcule le gradient — essentiellement la pente du paysage d'erreur — sur la base de cet exemple unique. Enfin, il met à jour les poids du modèle dans la direction opposée du gradient pour réduire l'erreur.

Ce processus est répété pendant de nombreuses itérations, souvent regroupées en époques, jusqu'à ce que les performances du modèle se stabilisent. L'amplitude de ces mises à jour est contrôlée par un hyperparamètre appelé le taux d'apprentissage. Étant donné que chaque étape est basée sur un seul échantillon, le chemin vers le minimum est souvent en zigzag ou bruyant par rapport à la trajectoire fluide de la descente de gradient par lots. Cependant, ce bruit est souvent avantageux en deep learning, car il peut empêcher le modèle de rester bloqué dans un minimum local, ce qui peut potentiellement conduire à une meilleure solution globale.

SGD vs autres algorithmes d'optimisation#

Comprendre les distinctions entre le SGD et les algorithmes d'optimisation associés est crucial pour sélectionner la bonne stratégie d'entraînement.

  • Descente de gradient par lots: Cette méthode traditionnelle calcule le gradient en utilisant l'ensemble du dataset pour chaque mise à jour. Bien qu'elle offre un chemin stable et direct vers le minimum, elle est extrêmement lente et gourmande en mémoire pour les tâches de machine learning (ML) à grande échelle.
  • Descente de gradient par mini-lots: En pratique, la plupart des frameworks de deep learning modernes, y compris PyTorch, implémentent une approche hybride souvent appelée SGD mais techniquement strictement « Mini-Batch SGD ». Cette méthode met à jour les paramètres en utilisant un petit groupe d'échantillons (un lot) plutôt qu'un seul. Elle équilibre l'efficacité computationnelle du SGD pur et la stabilité de la descente de gradient par lots, ce qui en fait le standard pour l'entraînement de modèles comme YOLO26.
  • Optimiseur Adam: Adam est un algorithme d'optimisation du taux d'apprentissage adaptatif qui s'appuie sur le SGD. Il ajuste le taux d'apprentissage pour chaque paramètre individuellement sur la base d'estimations de moments. Bien qu'Adam converge souvent plus rapidement, le SGD avec momentum est encore fréquemment utilisé en vision par ordinateur (CV) pour sa capacité à trouver des solutions plus généralisables dans certains scénarios.

Applications concrètes#

Le SGD et ses variantes sont les moteurs derrière de nombreuses technologies d'IA transformatrices utilisées aujourd'hui.

  1. Véhicules autonomes: Dans le développement de véhicules autonomes, les modèles doivent traiter de vastes flux de données visuelles pour identifier les piétons, les panneaux de signalisation et les obstacles. L'entraînement de ces réseaux de détection d'objets sophistiqués nécessite une optimisation efficace pour gérer des millions d'images de route. Le SGD permet aux ingénieurs d'affiner itérativement la précision du modèle, garantissant que les systèmes critiques pour la sécurité dans l'IA dans l'automobile peuvent prendre des décisions fiables en temps réel.

  2. Diagnostics médicaux: Le domaine de l'analyse d'images médicales repose largement sur le deep learning pour détecter des anomalies telles que des tumeurs dans des examens IRM ou des radiographies. Parce que les datasets médicaux peuvent être massifs et haute résolution, le SGD permet l'entraînement de réseaux de neurones convolutifs (CNN) complexes sans saturer les ressources mémoire. Cela facilite la création d'outils de diagnostic de haute précision qui aident les médecins dans l'IA en santé.

Exemple de code Python#

Bien que les bibliothèques de haut niveau comme ultralytics gèrent l'optimisation en interne lors de la commande train(), tu peux voir comment un optimisateur SGD est initialisé et utilisé dans un workflow PyTorch de plus bas niveau. Cet extrait montre comment définir un optimiseur SGD simple pour un tenseur.

import torch
import torch.nn as nn
import torch.optim as optim

# Define a simple linear model
model = nn.Linear(10, 1)

# Initialize Stochastic Gradient Descent (SGD) optimizer
# 'lr' is the learning rate, and 'momentum' helps accelerate gradients in the right direction
optimizer = optim.SGD(model.parameters(), lr=0.01, momentum=0.9)

# Create a dummy input and target
data = torch.randn(1, 10)
target = torch.randn(1, 1)

# Forward pass
output = model(data)
loss = nn.MSELoss()(output, target)

# Backward pass and optimization step
optimizer.zero_grad()  # Clear previous gradients
loss.backward()  # Calculate gradients
optimizer.step()  # Update model parameters
print("Model parameters updated using SGD.")

Défis et solutions#

Malgré sa popularité, le SGD présente des défis. Le problème principal est le bruit dans les étapes de gradient, qui peut faire fluctuer la perte de manière erratique plutôt de converger en douceur. Pour atténuer cela, les praticiens utilisent souvent le momentum, une technique qui aide à accélérer le SGD dans la direction pertinente et amortit les oscillations, un peu comme une lourde boule qui dévale une colline. De plus, trouver le bon taux d'apprentissage est critique ; s'il est trop élevé, le modèle peut dépasser le minimum (gradient explosif), et s'il est trop bas, l'entraînement sera extrêmement lent. Des outils comme la Ultralytics Platform aident à automatiser ce processus en gérant le réglage des hyperparamètres et en fournissant des visualisations pour les métriques d'entraînement. Des avancées telles que l'optimiseur Adam automatisent essentiellement l'ajustement du taux d'apprentissage, répondant ainsi à certaines des difficultés inhérentes au SGD.

Explore solutions

Real-time AI that works with your team

IA dans la robotique

Équipe tes machines plus intelligentes avec les modèles Ultralytics YOLO. La vision par IA dans la robotique propulse la navigation autonome, la perception, le suivi d'objets et le contrôle en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans la logistique

Simplifie la logistique avec les modèles Ultralytics YOLO. La vision par IA permet l'inspection des colis, le tri, le suivi des véhicules et la surveillance de la sécurité des entrepôts en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA alimente le suivi des stocks, la surveillance des étagères, la gestion des files d'attente et des informations plus intelligentes sur les clients.
En savoir plus
Real-time AI that works with your team

IA dans la santé

Construis des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans la santé permet une imagerie médicale plus rapide, des diagnostics plus intelligents et une surveillance des patients.
En savoir plus
Real-time AI that works with your team

IA dans la fabrication

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA favorise le contrôle qualité, la détection des défauts, la conformité aux EPI et l'automatisation des chaînes de montage.
En savoir plus
Real-time AI that works with your operation

IA dans l'automobile

Applique la vision par ordinateur dans l'automobile avec les modèles Ultralytics YOLO. L'IA de vision améliore la sécurité routière, l'assistance à la conduite et l'automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Real-time AI tailored to your operation

IA en agriculture

Intègre l'IA de vision à l'agriculture intelligente avec les modèles Ultralytics YOLO. Optimise la surveillance des cultures, le suivi du bétail et l'agriculture de précision pour des rendements plus élevés et plus intelligents.
En savoir plus
Real-time AI that works with your team

IA dans la robotique

Équipe tes machines plus intelligentes avec les modèles Ultralytics YOLO. La vision par IA dans la robotique propulse la navigation autonome, la perception, le suivi d'objets et le contrôle en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans la logistique

Simplifie la logistique avec les modèles Ultralytics YOLO. La vision par IA permet l'inspection des colis, le tri, le suivi des véhicules et la surveillance de la sécurité des entrepôts en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA alimente le suivi des stocks, la surveillance des étagères, la gestion des files d'attente et des informations plus intelligentes sur les clients.
En savoir plus
Real-time AI that works with your team

IA dans la santé

Construis des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans la santé permet une imagerie médicale plus rapide, des diagnostics plus intelligents et une surveillance des patients.
En savoir plus
Real-time AI that works with your team

IA dans la fabrication

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA favorise le contrôle qualité, la détection des défauts, la conformité aux EPI et l'automatisation des chaînes de montage.
En savoir plus
Real-time AI that works with your operation

IA dans l'automobile

Applique la vision par ordinateur dans l'automobile avec les modèles Ultralytics YOLO. L'IA de vision améliore la sécurité routière, l'assistance à la conduite et l'automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Real-time AI tailored to your operation

IA en agriculture

Intègre l'IA de vision à l'agriculture intelligente avec les modèles Ultralytics YOLO. Optimise la surveillance des cultures, le suivi du bétail et l'agriculture de précision pour des rendements plus élevés et plus intelligents.
En savoir plus
Real-time AI that works with your team

IA dans la robotique

Équipe tes machines plus intelligentes avec les modèles Ultralytics YOLO. La vision par IA dans la robotique propulse la navigation autonome, la perception, le suivi d'objets et le contrôle en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans la logistique

Simplifie la logistique avec les modèles Ultralytics YOLO. La vision par IA permet l'inspection des colis, le tri, le suivi des véhicules et la surveillance de la sécurité des entrepôts en temps réel.
En savoir plus
Real-time AI that works with your team

IA dans le commerce de détail

Réinvente le commerce de détail avec les modèles Ultralytics YOLO. La vision par IA alimente le suivi des stocks, la surveillance des étagères, la gestion des files d'attente et des informations plus intelligentes sur les clients.
En savoir plus
Real-time AI that works with your team

IA dans la santé

Construis des solutions de santé avec les modèles Ultralytics YOLO. L'IA de vision dans la santé permet une imagerie médicale plus rapide, des diagnostics plus intelligents et une surveillance des patients.
En savoir plus
Real-time AI that works with your team

IA dans la fabrication

Optimise la fabrication avec les modèles Ultralytics YOLO. La vision par IA favorise le contrôle qualité, la détection des défauts, la conformité aux EPI et l'automatisation des chaînes de montage.
En savoir plus
Real-time AI that works with your operation

IA dans l'automobile

Applique la vision par ordinateur dans l'automobile avec les modèles Ultralytics YOLO. L'IA de vision améliore la sécurité routière, l'assistance à la conduite et l'automatisation des véhicules pour des routes plus intelligentes.
En savoir plus
Real-time AI tailored to your operation

IA en agriculture

Intègre l'IA de vision à l'agriculture intelligente avec les modèles Ultralytics YOLO. Optimise la surveillance des cultures, le suivi du bétail et l'agriculture de précision pour des rendements plus élevés et plus intelligents.
En savoir plus

Construisons ensemble le futur de l'IA !

Commence ton aventure avec le futur de l'apprentissage automatique