StartseiteArtikel

Sensationeller Artikel von Jeff Dean von Google: Elastisches masstabstreues verteiltes Vortraining ist endlich möglich!

机器之心2026-04-25 11:04
Das unvollendete Ziel aus einem Paper, in dem Jeff Dean vor 14 Jahren als Erstautor mitgewirkt hat, wurde nun von ihm selbst erreicht.

Elastisches AI-Vor-training hat die nächste Frontiere erreicht! Kein Wunder: Es kommt von Google.

Dem Bericht zufolge ist das von ihnen vorgeschlagene Decoupled DiLoCo eine revolutionäre verteilte Trainiertechnik, die heterogenes Hardware weltweit zur Trainierung nutzen kann. Selbst wenn das Hardware ausfällt, hält das System nicht an!

Dieser bedeutende Forschungserfolg hat breite Aufmerksamkeit erregt. Der Tweet von Arthur Douillard, einem der Leitautoren der Studie, auf X erreichte über 2,6 Millionen Ansichten!

Es ist bemerkenswert, dass auch Jeff Dean, ein bekannter Forscher und Chefwissenschaftler von Google DeepMind und Google Research, einer der Autoren ist. Er hat auch mehrere Tweets veröffentlicht, um über diesen Erfolg zu berichten.

In seinen Tweets erinnerte er sich auch an seine eigene Erstautorenarbeit „Large Scale Distributed Deep Networks“ von vor 14 Jahren. In dieser NeurIPS 2012-Studie haben sie bereits bewiesen, dass großskaliges Training und asynchrone Techniken zur Trainierung sehr großer neuronale Netze verwendet werden können und die Trainingsaufgaben fehlertolerant auf Tausende von Maschinen verteilt werden können.

Jetzt hat Decoupled DiLoCo das Potenzial, diese Idee in eine praktikable großskalige Ingenieurspraxis umzusetzen.

Hintergrund: Je größer die Skala, desto häufiger die Ausfälle

Um die Bedeutung dieser Arbeit zu verstehen, muss man zunächst eine grundlegende Herausforderung des modernen AI-Trainings verstehen.

Heutzutage wird beim Training von großen Sprachmodellen häufig eine parallele Methode namens SPMD (Single Program Multiple Data) verwendet. Einfach ausgedrückt, ist es wie in einer Fabrik, wo alle Arbeiter synchron eine Montagelinie bedienen müssen. Jeder macht seinen Teil, aber alle müssen gleichzeitig fertig sein, um zum nächsten Schritt zu gelangen. Wenn an einer Station etwas schief geht, muss die gesamte Linie anhalten und warten.

Dies ist bei kleineren Skalen kein Problem. Aber wenn die Clustergröße auf Hunderttausende oder sogar Millionen von Chips erweitert wird, kommt die Wahrscheinlichkeit ins Spiel.

In der Studie gibt es eine direkte Berechnung: Nehmen wir an, ein Chip fällt im Durchschnitt nur einmal im Jahr aus. Das klingt schon sehr zuverlässig. Aber wenn ein Cluster 2,4 Millionen Chips hat, verkürzt sich das mittlere Ausfallintervall des gesamten Clusters auf weniger als eine Minute. Bei dieser Skala können Hardwareausfälle nicht mehr als Ausnahmen betrachtet werden, sondern sind Teil des alltäglichen Trainings.

Die bestehende Lösung ist die sogenannte „elastische Trainierung“: Wenn ein Maschinenausfall erkannt wird, wird die Clusterkonfiguration neu angepasst, und die verbleibenden gesunden Maschinen setzen das Training fort. Aber dieser Neukonfigurationsprozess selbst dauert viel Zeit, was dazu führt, dass der gesamte Cluster während der Wartezeit keine effektive Berechnung durchführen kann.

Die Simulationsdaten der Studie zeigen, dass bei einer Clustergröße von 2,4 Millionen Chips selbst mit elastischer Mechanik die effektive Berechnungszeit (d.h. der „Goodput“, die effektive Durchsatzrate) nur 40 % beträgt. Das heißt, 60 % der Zeit befindet sich der Cluster in einer Art Warte- oder Neukonfigurationsphase, und die Rechenleistung wird vergeudet.

Die Fesseln der „Gleichschrittigkeit“ brechen

Der Kerngedanke von Decoupled DiLoCo ist, die Voraussetzung aufzugeben, dass alle Maschinen synchron arbeiten müssen.

Dieses Framework teilt den gesamten Trainingscluster in mehrere unabhängige „Lerner“ (Learner) auf. Jeder Lerner trainiert unabhängig mit den ihm zugewiesenen Daten und muss nicht auf die anderen Lerner warten. Wenn ein Lerner ausfällt, bemerken die anderen Lerner es überhaupt nicht und setzen ihren Trainingsrhythmus fort. Dies ist wie ein großer gemeinsamer Prüfungsraum, der in mehrere unabhängige Prüfungsräume aufgeteilt wird. Wenn in einem Raum ein Brand ausbricht und die Schüler evakuiert werden, hat dies keine Auswirkungen auf die anderen Schüler, die weiterhin ihre Prüfungen schreiben können.

Wie kooperieren die einzelnen Lerner, um am Ende dasselbe Modell zu trainieren?

Hier wird ein leistungsschwacher „Synchronisierer“ (Syncer) eingeführt. Der Synchronisierer läuft auf relativ stabilen CPU-Ressourcen und ist dafür verantwortlich, in regelmäßigen Abständen die Parameterupdates der einzelnen Lerner zu sammeln, sie zu kombinieren und das kombinierte Ergebnis zurückzuschicken.

Der Schlüssel liegt darin: Der Synchronisierer muss nicht warten, bis alle Lerner bereit sind, um die Kombination zu starten. Sobald eine ausreichende Anzahl (in der Studie als „Mindestquorum“ bezeichnet) von Lernern ihren Fortschritt gemeldet hat, kann der Synchronisierer beginnen. Der ausgefallene Lerner wird einfach übersprungen und nach seiner Wiederherstellung wieder hinzugefügt.

Darüber hinaus können die Rechengeschwindigkeiten der verschiedenen Lerner unterschiedlich sein (insbesondere wenn neue und alte Chip-Generationen gemischt werden). Ein schneller Lerner verarbeitet in einem Synchronisierungsintervall mehr Daten als ein langsamer. Um zu vermeiden, dass der schnelle Lerner bei der Kombination „ein Stimmrecht vieler Stimmrechte“ hat, führt der Synchronisierer einen dynamischen Gewichtungsmechanismus basierend auf der Anzahl der verarbeiteten Token ein, um das Kombinationsergebnis fairer zu gestalten und die tatsächliche Leistung jedes Lerners besser widerzuspiegeln.

Es gibt auch ein Detail namens „adaptive Toleranzfenster“ (Adaptive Grace Window): Der Synchronisierer wartet nach Erreichen des Mindestquorums nicht sofort mit der Kombination, sondern etwas länger, um es möglichst vielen Lernern zu ermöglichen, an dieser Synchronisierungsteilnahme teilzunehmen, um so die Qualität jeder Kombination zu verbessern. Diese Wartezeit wird sorgfältig so gesteuert, dass die Gesamt-Trainingsgeschwindigkeit nicht beeinträchtigt wird.

Ein weiterer technischer Aspekt ist „ausgeglichene Tensorfragmentierung“ (Balanced Tensor Fragmentation). Die Modellparameter werden nicht mehr als Ganzes übertragen, sondern in mehrere ähnlich große Fragmente aufgeteilt. Bei jedem Schritt wird nur ein Fragment übertragen, um den Kommunikationsaufwand gleichmäßig zu verteilen und die „pulsartige“ Übertragung mit stark schwankender Bandbreitennutzung zu vermeiden.

Experimentelle Ergebnisse: Bei sehr hoher Ausfallrate sinkt die Leistung kaum

Die Studie hat das praktische Ergebnis dieses Ansatzes mit einer Vielzahl von Experimenten bestätigt.

In Bezug auf den Goodput (effektive Durchsatzrate) wurde ein Szenario mit 2,4 Millionen Chips simuliert, wobei jeder Chip im Durchschnitt einmal im Jahr ausfällt (bei diesem Szenario beträgt das Ausfallintervall des gesamten Clusters weniger als eine Minute). Wenn Decoupled DiLoCo 8 Lerner verwendet, bleibt der Goodput bei 88 %. Unter denselben Bedingungen beträgt der Goodput des herkömmlichen elastischen Datenparallelen Ansatzes nur 58 %.

In Bezug auf die Modellqualität wurde das Trainingsergebnis eines dichten Modells mit 5 Milliarden Parametern auf 1 Billion Token verglichen. Sowohl bei Textbenchmarks (ARC, BoolQ, HellaSwag usw.) als auch bei visuellen Benchmarks (DocVQA, TextVQA usw.) gibt es fast keinen Unterschied zwischen den Ergebnissen von Decoupled DiLoCo und denen des herkömmlichen Datenparallelen Trainings. Das heißt, die Fehlertoleranz wurde erheblich verbessert, ohne die Modellqualität zu beeinträchtigen.

Die Studie hat auch das Verhalten dieses Ansatzes in einem Szenario mit gemischten alten Chips (TPUv5e und TPUv5p) überprüft. Selbst wenn der langsamste Lerner fast 20 % langsamer als der schnellste ist, hat das System durch die Kombination aus Mindestquorum und adaptivem Toleranzfenster eine ähnliche Modellqualität wie bei vollständig synchronem Training erreicht, während die Rechenauslastung bei 100 % bleibt.

In Bezug auf den Bandbreitennutzung sind die Zahlen besonders beeindruckend. Um eine Rechenauslastung von 90 % zu erreichen, benötigt der herkömmliche Datenparallele Ansatz in einem Szenario mit einer Rechenschrittlänge von 1 Sekunde und 2 Rechenzentren eine Bandbreite von etwa 104 Gbit/s. Decoupled DiLoCo benötigt nur 1,7 Gbit/s und nach der Verwendung von int4-Kompression nur noch 0,43 Gbit/s. Der Bandbreitenbedarf wurde um etwa zwei Größenordnungen reduziert.

Größere Vorstellungskraft: „Rest“-Rechenleistung nutzen

Der geringe Bandbreitenbedarf bringt einen unerwarteten Zusatznutzen mit sich: Es ist möglich, jederzeit „Rest“-Rechenleistung zu nutzen, die vorübergehend verfügbar ist.

Beim herkömmlichen Datenparallelen Training muss, um eine neue Maschine hinzuzufügen, zunächst die gesamte aktuelle Modellparameter an die neue Maschine übertragen werden. Dieser Prozess kann viel Zeit des gesamten Clusters in Anspruch nehmen, und die Trainingsleistung sinkt plötzlich, wenn eine neue Maschine hinzugefügt wird.

Decoupled DiLoCo ist anders. Wenn ein neuer Lerner hinzugefügt wird, kann er zunächst asynchron einen aktuellen Modellzustand von einem benachbarten Lerner abrufen. Währenddessen werden die anderen Lerner überhaupt nicht beeinträchtigt und können weiterhin normal trainieren.

Die Studie hat ein Experiment durchgeführt: Während des Trainings wurden zusätzliche vorübergehende Lerner dynamisch hinzugefügt (um das Szenario zu simulieren, dass die verfügbare Rechenleistung tagsüber steigt). Die Ergebnisse zeigen, dass je mehr vorübergehende Rechenleistung hinzugefügt wird, desto kürzer die Trainingszeit wird, und die Modellqualität bleibt unverändert. Im Vergleich dazu muss bei dem herkömmlichen Datenparallelen Ansatz die zusätzliche Rechenleistung mehr als verdoppelt werden, bevor sich der Nutzen zeigt.

Dies bedeutet, dass verstreute Rechenleistung, die in verschiedenen Regionen, Zeitzonen und Generationen von Hardware verteilt ist, auch in eine Trainingsaufgabe integriert werden kann, auch wenn die Netzwerkbandbreite zwischen ihnen nur ein Bruchteil der internen Bandbreite eines normalen Rechenzentrums beträgt.

Eine alte