nouvelles

le trafic des formations llm est 10 000 fois inférieur ! un nouvel optimiseur distribué, intégrant la puissance de calcul mondiale pour former une ia puissante

2024-09-10

한어Русский языкEnglishFrançaisIndonesianSanskrit日本語DeutschPortuguêsΕλληνικάespañolItalianoSuomalainenLatina



  nouveau rapport de sagesse

editeur : alan
[introduction à la nouvelle sagesse]récemment, nous research a annoncé une avancée majeure en utilisant un optimiseur distribué indépendant de l'architecture et du réseau, les chercheurs ont réussi à réduire de 1 000 à 10 000 fois le volume de communication entre les gpu lors de la formation llm !

et si toute la puissance de calcul du monde pouvait être utilisée pour entraîner des modèles d’ia ?

récemment, nous research, qui a attiré l'attention avec la sortie du logiciel open source hermes 3 (basé sur llama 3.1), a une fois de plus annoncé une avancée majeure - distro (distributed internet training).

en utilisant un optimiseur distribué indépendant de l'architecture et du réseau, les chercheurs ont réussi à réduire la communication inter-gpu de 1 000 à 10 000 fois lors de la formation llm !

avec des améliorations aussi exagérées, le coût important et le goulot d'étranglement de la formation de grands modèles - la bande passante - ne sont plus un problème.

grâce à la méthode distro, vous pouvez répartir la charge de formation sur internet et l'ensemble du monde en ligne devient un immense cluster de serveurs d'ia hétérogène.

——tout appareil doté d'une puissance de calcul appropriée peut participer au processus de formation.

des expériences ont prouvé que la méthode décrite dans cet article n'entraîne fondamentalement pas de diminution des performances du modèle. dans le même temps, distro-adamw est équivalent à la norme adamw+all-reduce en termes de vitesse de convergence.

formation internet distribuée

d’une manière générale, la formation de réseaux neuronaux à grande échelle implique une surcharge de communication importante.

par exemple, lors du parallélisme des données, différentes données d'entraînement sont calculées en avant et en arrière sur différents matériels (cartes graphiques, etc.). après cela, les gradients calculés à partir du même lot de données doivent être synchronisés entre les cartes graphiques avant d'entrer dans le système. prochaine étape.

si le modèle est parallèle, les données intermédiaires doivent être fusionnées ou accumulées via all-reduce.

si ces frais de communication de données ne peuvent pas se chevaucher, ils deviendront un goulot d'étranglement dans la formation du modèle.

il se trouve que la mémoire vidéo et la bande passante de laohuang sont très coûteuses, et même le matériel requis lors de la configuration de plusieurs cartes est également très coûteux.

pour résoudre ce problème, les chercheurs ont développé distro, qui réduit les besoins de communication entre gpu de quatre à cinq ordres de grandeur sans recourir à une analyse amortie, permettant ainsi une formation à faible latence de grands réseaux neuronaux sur des réseaux lents.

distro est général, évolutif et synchronisé avec l'horloge (semblable à sgd, adam, etc., chaque étape de formation utilise les mêmes opérations arithmétiques et prend le même temps).

de plus, par rapport aux précédents optimiseurs ad hoc à faible communication, distro est insensible à la topologie et à l'architecture du réseau neuronal des réseaux de télécommunications et peut prendre en charge de manière native la formation parallèle de données distribuées (ddp) avec une surcharge minimale.

pré-formation llm

les chercheurs ont utilisé nanotron comme cadre de pré-formation et ont exécuté uniquement selon la stratégie ddp (chaque gpu charge l'intégralité du modèle dans la vram).

llm sélectionne llama 2 de taille 1,2b. les hyperparamètres utilisés dans le modèle et la formation sont les suivants :

les données de formation utilisent l'ensemble de données dolma v1.7 et 10 % d'échantillons représentatifs (les 105 premiers milliards de jetons) sont sélectionnés au hasard.

l'optimiseur utilise adamw, β1=0,9, β2=0,95, le taux d'apprentissage maximal est de 4×10e-4, le schéma de désintégration du cosinus est utilisé et la désintégration du poids est définie sur 0,1.

comme autre ensemble d'expériences à des fins de comparaison, adamw a été remplacé par distro-adamw sans modifier les hyperparamètres et sans désactiver l'opération all-reduce dans nanotron.

contrairement aux méthodes de formation distribuées précédentes, distro ne synchronise pas l'état de l'optimiseur (il peut même être sans état).

la figure ci-dessous est la courbe de perte d'entraînement de deux séries d'expériences, utilisant 105 b de données pour 25 000 étapes. on peut voir que la capacité de convergence de distro est la même que celle de all-reduce.

surtout, sans affecter l'effet d'entraînement, distro a directement réduit le volume de communication de 74,4 go à 86,8 mo ! cela équivaut à une réduction de 857 fois de la pression de la bande passante.

l'auteur a également déclaré que ce 857 fois n'est qu'un test initial et qu'il ne sera pas difficile d'ajuster les hyperparamètres plus tard et de le réduire de 1 000 à 3 000 fois.

s'il s'agit d'un post-entraînement et d'un réglage fin, il peut même atteindre une optimisation de la communication jusqu'à 10 000 fois sans affecter fondamentalement l'effet de l'entraînement.

enfin, afin de vérifier l'effet de l'entraînement, l'auteur a effectué le test de référence zéro tir gpt4all sur le modèle entraîné et l'a comparé à tinyllama (point de contrôle) entraîné sur le même nombre de jetons.

les résultats sont présentés dans le tableau ci-dessus. l'architecture et le processus de formation de tinyllama sont très similaires aux expériences de cet article et peuvent être utilisés comme mesure pour vérifier l'intégrité des résultats.

applications futures

flux de données

dans le scénario de cette expérience, 32 nœuds utilisent le all-reduce le plus simple (connexion complète), et chaque nœud transmet en moyenne 86,8 mo (2,8 mo × 31) et reçoit la même quantité de données.

si un serveur dédié est utilisé pour l'agrégation des données, chaque nœud n'a besoin que de télécharger 2,8 mo de données (les données reçues restent inchangées) et le volume de communication est encore réduit.

de plus, l’asymétrie est avantageuse car la bande passante de la plupart des réseaux internet grand public est fortement orientée vers des vitesses de téléchargement plus élevées.

en supposant que la vitesse stable du réseau est de 100 mbps en téléchargement et de 10 mbps en téléchargement, le délai dans le pire des cas n'est que de 6,94 secondes pour le téléchargement et de 2,24 secondes pour le téléchargement. en cas de chevauchement, le délai pour chaque étape est de 6,94 secondes.

ps : la transmission de données ci-dessus est entièrement vectorielle d'origine, et elle peut être plus rapide si la technologie de compression est utilisée.

bande passante

les auteurs ont déclaré que les expériences et recherches actuelles sont relativement limitées et qu’il est impossible de conclure si le taux de réduction de la bande passante augmentera, diminuera ou restera le même à mesure que le modèle s’agrandit.

cependant, le 1,2b actuel semble être la taille minimale à laquelle distro peut bien fonctionner (aussi petite soit-elle, il ne convergera pas), on peut donc supposer qu'à mesure que la taille du modèle augmente, la communication sera de moins en moins importante. être requis.

cependant, il est également possible que le volume de communication ne soit pas lié à la taille du modèle. dans ce cas, la taille du modèle peut être augmentée sans augmenter la bande passante de communication pour observer si un modèle plus grand améliorera les effets de formation et d'apprentissage.

si ce dernier scénario est vrai, alors le paradigme de la conception et de la fabrication des futurs gpu sera modifié (vram plus grande et bande passante plus étroite).

il se trouve que nous préférons également les charges de travail gourmandes en calcul (par opposition aux charges de travail gourmandes en e/s), car la bande passante est beaucoup plus chère que le calcul de nos jours.

apprentissage fédéré

en plus de la formation llm, à quoi d’autre distro peut-il être utilisé ?

faire une formation distribuée sur internet fait immédiatement penser à un apprentissage fédéré.

tout en permettant une formation collaborative modèle, le maintien de la confidentialité et la décentralisation des données de chaque participant deviennent de plus en plus importants maintenant que llm est contrôlé par de grandes entreprises.

jusqu’à présent, l’apprentissage fédéré manquait de méthodes efficaces pour former de grands modèles sur une bande passante internet limitée.

distro n'a aucune exigence sur la façon de traiter les données ou de distribuer les données à des nœuds gpu individuels, et il peut être sans état (similaire à la moyenne fédérée), il convient donc à l'avenir de l'apprentissage fédéré.

cluster gpu hétérogène virtuel

de plus, distro peut créer un réseau entièrement décentralisé et sans autorisation pour collaborer et partager des ressources.

les expériences montrent que distro est considérablement résilient à un petit nombre de nœuds rétrogradés ou abandonnés pendant la formation, et peut facilement s'adapter à l'ajout de nouveaux nœuds.

avec la bénédiction de cette capacité, d’une part, il peut garantir la sécurité de l’ensemble du système et réduire le risque que des nœuds non fiables utilisent des attaques contradictoires pour perturber les opérations.

d’un autre côté, les institutions et les individus peuvent également être encouragés à contribuer de manière flexible à leurs propres ressources informatiques et à libérer leur puissance de calcul potentielle.

même certaines anciennes cartes dont la mémoire ou la puissance de calcul est insuffisante peuvent participer pour gagner de l'argent supplémentaire, en utilisant des stratégies telles que fsdp et swarm parallelism pour travailler avec distro.

énergie

une application ultérieure à grande échelle de distro pourrait réduire la consommation d'énergie, les coûts d'infrastructure et les problèmes liés à l'utilisation des sols causés par la construction de grands centres de données.

le projet llama 3.1 a nécessité la construction de deux grands superamas monolithiques, contenant chacun 24 000 gpu h100, et le processus de formation à lui seul a produit l’équivalent de 11 000 tonnes d’émissions de co2.

dans le llm actuel, outre l'augmentation de la taille des paramètres du modèle, la quantité de données de formation augmente également, ce qui amène les centres de données liés à l'ia à atteindre les limites des réseaux électriques modernes.

distro peut être utilisé pour équilibrer de manière adaptative plusieurs petits centres de données modulaires en utilisant une capacité excédentaire, en utilisant l'infrastructure existante grâce à une technologie de formation d'équilibrage dynamique pour réduire l'impact négatif de la formation sur l'environnement.

à l’heure actuelle, la théorie derrière distro nécessite encore une exploration plus approfondie, et des articles universitaires plus rigoureux et détaillés ainsi que des codes complets seront publiés à l’avenir.