Glossaire

Formation distribuée

Accélère la formation à l'IA avec la formation distribuée ! Apprends à réduire le temps de formation, à mettre à l'échelle les modèles et à optimiser les ressources pour les projets ML complexes.

Entraîne les modèles YOLO simplement
avec Ultralytics HUB

En savoir plus

La formation distribuée est une méthode utilisée dans l'apprentissage automatique (ML) pour former de grands modèles sur des ensembles de données massifs en répartissant la charge de travail sur plusieurs appareils, tels que des GPU ou des CPU. Cette approche réduit considérablement le temps de formation par rapport à l'utilisation d'un seul appareil, ce qui permet de travailler avec des modèles et des ensembles de données qui seraient autrement impraticables en raison de leur taille et de leur complexité. En divisant le processus de formation, la formation distribuée permet une expérimentation plus rapide, une utilisation plus efficace des ressources et la possibilité de s'attaquer à des projets d'IA plus ambitieux.

Concepts clés de la formation distribuée

La formation distribuée implique plusieurs concepts importants qui aident à comprendre comment elle fonctionne et pourquoi elle est efficace :

  • Parallélisme des données: Il s'agit de l'approche la plus courante en matière de formation distribuée, où l'ensemble de données est divisé en plusieurs sous-ensembles, et où chaque appareil traite un sous-ensemble différent. Chaque appareil s'entraîne sur sa partie des données et partage ses résultats avec les autres pour mettre à jour le modèle. Cela permet de s'assurer que tous les appareils travaillent ensemble vers un objectif commun, en améliorant les performances du modèle grâce à l'exploitation de données diverses.

  • Parallélisme des modèles : dans les cas où un modèle est trop grand pour tenir sur un seul appareil, on utilise le parallélisme des modèles. Cela consiste à répartir le modèle lui-même sur plusieurs appareils, chaque appareil étant responsable d'une partie des couches ou des paramètres du modèle. Cette méthode est particulièrement utile pour les très grands modèles, tels que ceux utilisés dans le traitement du langage naturel (NLP) ou les tâches avancées de vision par ordinateur.

  • Serveur de paramètres: Une architecture de serveur de paramètres implique un serveur central (ou des serveurs) qui stocke les paramètres du modèle. Les nœuds de travail calculent les gradients sur leurs données et les envoient au serveur de paramètres, qui met à jour le modèle et renvoie les paramètres mis à jour aux travailleurs. Cette configuration permet de synchroniser le modèle sur tous les appareils.

  • Agrégation des gradients: Après que chaque appareil a calculé les gradients en fonction de ses données, ces gradients doivent être combinés pour mettre à jour le modèle. L'agrégation des gradients est le processus de collecte et de calcul de la moyenne des gradients de tous les appareils, ce qui garantit que le modèle apprend à partir de l'ensemble des données.

Avantages de la formation décentralisée

La formation distribuée offre plusieurs avantages qui en font un choix populaire pour la formation de modèles ML complexes :

  • Réduction du temps de formation: en répartissant la charge de travail, la formation distribuée réduit considérablement le temps nécessaire à la formation de grands modèles. Cette accélération permet d'accélérer l'itération et le développement de solutions d'IA.

  • Évolutivité: La formation distribuée peut s'adapter à des ensembles de données plus importants et à des modèles plus complexes en ajoutant davantage d'appareils au processus de formation. Cette évolutivité est cruciale pour gérer la taille croissante des ensembles de données et la complexité grandissante des modèles de pointe. En savoir plus sur l'évolutivité des systèmes d'IA.

  • Efficacité des ressources: La formation distribuée utilise efficacement les ressources informatiques disponibles, telles que plusieurs GPU. Cela est particulièrement bénéfique pour les organisations qui ont accès à des grappes de calcul à haute performance ou à des ressources basées sur le cloud.

Applications concrètes de la formation distribuée

La formation distribuée est utilisée dans une variété d'applications du monde réel, notamment :

  • Classification d'images à grande échelle: La formation de modèles pour classer des images dans des ensembles de données massifs, tels que ceux utilisés dans l'imagerie médicale ou l'analyse d'images satellites, nécessite souvent une formation distribuée pour gérer la charge de calcul. En savoir plus sur l'analyse d'images médicales et l'analyse d'images satellites.

  • Traitement du langage naturel: Les modèles pour des tâches telles que la traduction automatique, l'analyse des sentiments et la génération de texte peuvent être extrêmement volumineux. La formation distribuée permet d'entraîner ces modèles sur de grands corpus de textes, ce qui améliore leur précision et leurs performances.

  • Véhicules autonomes: La formation de modèles pour les véhicules autonomes implique le traitement de vastes quantités de données de capteurs. La formation distribuée permet de former efficacement des modèles complexes capables de comprendre et de naviguer dans des environnements réels. En savoir plus sur l'IA dans les voitures autonomes.

Exemples de cas d'utilisation

  1. Formation Ultralytics YOLO Modèles: La formation distribuée peut être utilisée pour accélérer la formation de Ultralytics YOLO modèles sur de grands ensembles de données. En répartissant la charge de travail sur plusieurs GPU, les utilisateurs peuvent réduire considérablement le temps de formation et améliorer les performances des modèles sur des tâches telles que la détection d'objets.

  2. Formation aux modèles basée sur le cloud: Les plateformes telles que Ultralytics HUB prennent en charge la formation distribuée, ce qui permet aux utilisateurs d'exploiter les ressources du cloud pour former leurs modèles. Ceci est particulièrement utile pour les utilisateurs qui n'ont pas accès à une infrastructure informatique performante.

Formation distribuée vs. autres méthodes de formation

Bien que la formation distribuée soit puissante, il est important de comprendre en quoi elle diffère des autres méthodes de formation :

  • Formation centralisée: Dans la formation centralisée, un seul appareil est utilisé pour former le modèle. Cette méthode est plus simple mais peut être beaucoup plus lente pour les modèles et les ensembles de données de grande taille.

  • Apprentissage fédéré: L'apprentissage fédéré est une autre approche distribuée dans laquelle les modèles sont formés localement sur des appareils décentralisés, et seules les mises à jour des modèles sont partagées avec un serveur central. Cette méthode donne la priorité à la confidentialité des données mais peut être plus complexe à mettre en œuvre que l'apprentissage distribué traditionnel.

La formation distribuée est une technique cruciale pour former efficacement des modèles d'apprentissage automatique à grande échelle. En comprenant ses concepts clés, ses avantages et ses applications, les praticiens peuvent tirer parti de la formation distribuée pour accélérer leurs projets d'IA et s'attaquer à des problèmes plus complexes. Des cadres comme TensorFlow et PyTorch fournissent des outils et des bibliothèques pour faciliter la formation distribuée, la rendant ainsi accessible à un large éventail d'utilisateurs. Pour ceux qui utilisent les modèles Ultralytics YOLO , l'intégration de la formation distribuée peut conduire à des améliorations significatives de l'efficacité de la formation et de la performance du modèle.

Tout lire