Découvre YOLO26 : l'IA de vision de nouvelle génération.
Ultralytics
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.

Link to this sectionComment fonctionne le Stochastic Gradient Descent#

L'objectif principal de tout processus d'entraînement est de minimiser une loss function, 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. Premièrement, l'algorithme sélectionne un point de données aléatoire parmi les training data. Il effectue ensuite une passe avant pour générer une prédiction et calcule l'erreur. En utilisant la backpropagation, l'algorithme calcule le gradient — essentiellement la pente du paysage d'erreur — basé sur cet unique exemple. Enfin, il met à jour les model weights dans la direction opposée du gradient pour réduire l'erreur.

Ce processus est répété sur de nombreuses itérations, souvent regroupées en epochs, jusqu'à ce que les performances du modèle se stabilisent. L'ampleur de ces mises à jour est contrôlée par un hyperparamètre appelé learning rate. Parce 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 lisse de la descente de gradient par lot. Cependant, ce bruit est souvent avantageux en deep learning, car il peut empêcher le modèle de rester bloqué dans un minimum local, menant potentiellement à une meilleure solution globale.

Link to this sectionSGD vs autres algorithmes d'optimisation#

Comprendre les distinctions entre le SGD et les optimization algorithms connexes est crucial pour choisir la bonne stratégie d'entraînement.

  • Batch Gradient Descent : Cette méthode traditionnelle calcule le gradient en utilisant l'intégralité du jeu de données pour chaque mise à jour. Bien qu'elle fournisse 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.
  • Mini-Batch Gradient Descent : 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 batch) plutôt qu'un seul. Elle équilibre l'efficacité computationnelle du SGD pur avec la stabilité de la descente de gradient par lot, ce qui en fait le standard pour l'entraînement de modèles comme YOLO26.
  • Adam Optimizer : Adam est un algorithme d'optimisation à taux d'apprentissage adaptatif qui s'appuie sur le SGD. Il ajuste le taux d'apprentissage pour chaque paramètre individuellement en fonction d'estimations de moments. Bien qu'Adam converge souvent plus rapidement, le SGD avec momentum est toujours fréquemment utilisé en computer vision (CV) pour sa capacité à trouver des solutions plus généralisables dans certains scénarios.

Link to this sectionApplications 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 autonomous vehicles, 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 object detection sophistiqués nécessite une optimisation efficace pour gérer des millions d'images routières. 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 le AI in automotive peuvent prendre des décisions fiables en temps réel.

  2. Diagnostic médical : Le domaine de medical image analysis repose fortement sur le deep learning pour détecter des anomalies telles que des tumeurs dans des IRM ou des radiographies. Parce que les ensembles de données médicaux peuvent être massifs et haute résolution, le SGD permet l'entraînement de convolutional neural networks (CNNs) 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 le AI in healthcare.

Link to this sectionExemple 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 optimiseur SGD est initialisé et utilisé dans un workflow PyTorch de plus bas niveau. Cet extrait démontre la définition d'un simple optimiseur SGD 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.")

Link to this sectionDéfis et solutions#

Malgré sa popularité, le SGD comporte des défis. Le problème principal est le bruit dans les étapes de gradient, qui peut provoquer des fluctuations importantes de la perte au lieu d'une convergence 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, similaire à une lourde boule roulant sur 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 (explosion de gradient), et s'il est trop bas, l'entraînement sera péniblement lent. Des outils comme la Ultralytics Platform aident à automatiser ce processus en gérant le hyperparameter tuning et en fournissant une visualisation pour les métriques d'entraînement. Des avancées comme le Adam optimizer automatisent essentiellement l'ajustement du taux d'apprentissage, résolvant 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