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

Distributed Training

L’entraînement distribué répartit l’entraînement d’un modèle sur plusieurs GPU ou machines à l’aide du parallélisme des données, par sharding, tensoriel ou en pipeline. Présentation de DDP, FSDP et de la mise à l’échelle.

L'entraînement distribué répartit l'entraînement d'un même modèle entre plusieurs processeurs, généralement des GPU ou des TPU sur une seule machine, ou sur un cloud ou un cluster sur site, afin d'accélérer l'entraînement ou de pouvoir entraîner un modèle trop volumineux pour la mémoire d'un seul appareil. Les appareils échangent des gradients, des activations ou des fragments de paramètres via des interconnexions rapides, à l'aide de bibliothèques de communication comme NVIDIA NCCL. C'est ainsi que sont entraînés les modèles de fondation et les grands modèles de langage modernes ; cette approche accélère aussi l'entraînement courant de la détection d'objets sur les stations de travail multigPU.

Fonctionnement de l’entraînement distribué#

Le parallélisme de données est la stratégie la plus courante. Chaque GPU héberge une réplique complète du modèle, traite sa propre partie de chaque lot de données d'entraînement, puis participe à une opération all-reduce qui moyenne les gradients afin que chaque réplique applique la même mise à jour par descente de gradient. Le parallélisme de données distribué (DDP) de PyTorch chevauche cette communication avec la passe arrière. La taille globale du lot correspond à la taille du lot par GPU multipliée par le nombre de GPU ; le taux d'apprentissage doit donc généralement évoluer en conséquence. Goyal et al. ont entraîné ResNet-50 sur ImageNet en une heure sur 256 GPU, avec un lot de 8,192 images, en utilisant une règle de mise à l'échelle linéaire et une phase de préchauffage ; l'efficacité de mise à l'échelle était d'environ 90 % entre 8 et 256 GPU.

Le parallélisme de données avec partitionnement réduit le coût mémoire de ces répliques. ZeRO et le parallélisme de données entièrement partitionné (FSDP) de PyTorch répartissent les paramètres, les gradients et les états de l'optimiseur entre les GPU, puis rassemblent tous les poids d'une couche uniquement pendant son calcul. Ainsi, la mémoire nécessaire sur chaque GPU diminue à mesure que le nombre de GPU augmente.

Le parallélisme de modèles répartit le réseau neuronal lui-même. Le parallélisme tensoriel répartit les multiplications matricielles individuelles entre les GPU ; le parallélisme en pipeline attribue des couches consécutives à différents GPU et leur transmet des micro-lots ; le parallélisme de contexte découpe les longues séquences ; et le parallélisme d'experts répartit les experts d'un modèle à mélange d'experts entre différents GPU. Des frameworks comme Megatron-LM associent ces méthodes au parallélisme de données pour entraîner des modèles comportant des centaines de milliards de paramètres.

L'entraînement multi-GPU en pratique#

La communication constitue le principal surcoût : le trafic all-reduce augmente avec la taille du modèle, de sorte que les GPU reliés par NVLink au sein d’un nœud passent mieux à l’échelle que les nœuds connectés par des réseaux plus lents. Les statistiques de normalisation par lots sont calculées par GPU, sauf si les couches sont converties en normalisation par lots synchronisée ; c’est important lorsque chaque GPU ne reçoit qu’une petite partie du lot. Ultralytics YOLO26 exécute l’entraînement multi-GPU par DDP : transmettre plusieurs ID d’appareils lance un processus par GPU avec torch.distributed.run, en utilisant le backend NCCL sur CUDA, et répartit uniformément la valeur batch entre les GPU.

from ultralytics import YOLO

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

# Entraîner sur les GPU 0 et 1 avec DDP ; batch=32 fournit 16 images à chaque GPU par étape
results = model.train(data="coco8.yaml", epochs=100, imgsz=640, batch=32, device=[0, 1])

Applications concrètes#

  • Grands modèles de langage : Meta a entraîné Llama 3 405B sur un maximum de 16K GPU H100, en combinant les parallélismes tensoriel, en pipeline, de contexte et de données dans ce que ses auteurs appellent le parallélisme 4D.
  • Véhicules autonomes : les équipes de perception entraînent des modèles de détection et de segmentation sur de vastes archives d'enregistrements de caméras, de lidar et de radar provenant de flottes de véhicules ; cela n'est possible qu'avec de grands clusters de GPU.
  • Analyse d'images médicales : les volumes 3D haute résolution de tomodensitométrie et d'IRM mettent à rude épreuve la mémoire d'un seul GPU ; répartir les lots ou les fragments du modèle entre plusieurs GPU permet d'entraîner des modèles et des volumes plus importants.
  • Apprentissage fédéré : l'apprentissage fédéré s'effectue aussi sur de nombreux appareils, mais les données restent sur les téléphones, dans les hôpitaux ou chez d'autres clients pour préserver la confidentialité ; seules les mises à jour du modèle sont envoyées à un serveur central. L'entraînement distribué rassemble les données dans un seul cluster pour maximiser la vitesse.
  • Apprentissage réparti : l'apprentissage réparti divise un modèle entre un client et un serveur afin que les données brutes ne quittent jamais le client, au prix de communications supplémentaires pour préserver la confidentialité.
  • Accumulation des gradients : l'accumulation des gradients additionne les gradients de plusieurs petits lots avant une mise à jour, reproduisant les calculs d'un grand lot sur un seul GPU au prix d'un temps d'exécution plus long. Le parallélisme de données, lui, calcule ces lots simultanément sur plusieurs GPU.

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