Sparse Mixture of Experts (Bild © DALL-E)
Diese Struktur ermöglicht es Modellen mit Milliarden von Parametern, die Kosten für das Vortraining zu senken und die Geschwindigkeit bei der Inferenz zu erhöhen. Durch die Begrenzung der aktiven Rechenleistung schließt MoE die Lücke zwischen der hohen Kapazität riesiger Modelle und der Effizienz kleinerer Modelle.
Entwicklung der bedingten Berechnung
Während die meisten modernen MoE-Implementierungen erst kürzlich aufkamen, reicht das Konzept bis ins Jahr 1991 zurück, als Forschungen zu adaptiven Mischungen lokaler Experten begannen. Diese frühen Arbeiten schlugen vor, separate Netzwerke für verschiedene Teilmengen von Trainingsfällen zu trainieren, die von einem Gating-Netzwerk verwaltet wurden, welches Aufgaben dem passenden Experten zuwies. Diese experimentellen Modelle erreichten ihre Genauigkeitsziele in der Hälfte der Zeit, die herkömmliche dichte Modelle benötigten.
Jahrelang gab es noch Hindernisse bei der Umsetzung. Erst 2017 gelang es Forschern, die algorithmischen und leistungsbezogenen Herausforderungen zu meistern, die nötig waren, um „Sparse Gating“ in großem Maßstab praktikabel zu machen. Dieser Fortschritt fiel mit dem Aufkommen der generativen KI zusammen, bei der Modelle für traditionelle dichte Architekturen zu rechenintensiv wurden.
Dichte versus spärliche Architekturen
Standardmäßige Deep-Learning-Modelle sind „dicht“. Sie nutzen Feed-Forward-Neuralnetzwerke, bei denen jedes einzelne Neuron und jede Verbindung zur Verarbeitung jedes einzelnen Datenelements herangezogen wird. Wenn Entwickler mehr Parameter hinzufügen, um die Fähigkeit eines Modells zum Erlernen komplexer Muster zu steigern, steigen die Rechenkosten linear an.
MoE ersetzt diese dichten Schichten durch spärliche Blöcke. Dadurch wird bedingtes Rechnen eingeführt. Ein Router, oder Gating-Netzwerk, lernt eine Abbildungsfunktion, um zu bestimmen, welche Experten für ein bestimmtes Token am effektivsten sind.
Im Mixtral-8x7B-Modell enthält jede Schicht acht Feed-Forward-Blöcke. Für jedes einzelne Token wählt der Router zwei dieser Experten aus, um die Daten zu verarbeiten. Die Ergebnisse werden dann kombiniert und an die nächste Schicht weitergeleitet. Das bedeutet, dass das Modell eine enorme Gesamtanzahl an Parametern haben kann, während der tatsächliche Rechenaufwand pro Token relativ gering bleibt.
Gesamtparameter versus aktive Parameter
Es gibt einen Unterschied zwischen der Anzahl der spärlichen Parameter und der Anzahl der aktiven Parameter. Die spärliche Parameteranzahl steht für die Gesamtkapazität des Modells, während die aktiven Parameter die tatsächliche Rechenlast während der Inferenz darstellen.
Beispielsweise hat Mixtral 8x7B insgesamt etwa 47 Milliarden Parameter. Zur Verarbeitung einer bestimmten Eingabe nutzt es jedoch nur etwa 12,9 Milliarden aktive Parameter. Dank dieser Effizienz übertrifft es in bestimmten Benchmarks größere, dichte Modelle wie LLaMA 2 70B und läuft dabei mit höheren Geschwindigkeiten.
Trotz dieser Recheneffizienz bleibt der Speicherbedarf hoch. Alle Parameter müssen in den RAM oder VRAM geladen werden, unabhängig davon, ob sie für ein bestimmtes Token aktiv sind. Folglich sinken die Hardwareanforderungen an den Speicher nicht einfach deshalb, weil die Berechnung spärlich ist.
Herausforderungen beim Routing und beim Lastausgleich
Die Effektivität eines MoE-Modells hängt von der Gating-Funktion ab. Ist der Router schlecht konzipiert, kann es zu einem „Expert Collapse“ kommen. Das passiert, wenn zu Beginn des Trainings einige Experten häufiger ausgewählt werden, wodurch sie genauer werden und der Router sie noch stärker bevorzugt. Andere Experten bleiben ungenutzt und werden zum Ballast. Um das zu verhindern, wenden Forscher verschiedene Techniken an:
- 1. Noisy Top-k Gating: Das Hinzufügen von Gaußschem Rauschen zu den Wahrscheinlichkeitswerten sorgt für eine gleichmäßigere Verteilung der Arbeit auf die Experten.
- 2. Regularisierung: Systeme können eine übermäßige Abhängigkeit von einem einzelnen Experten bestrafen oder den vielfältigen Einsatz aller verfügbaren Experten belohnen.
- 3. Zufälliges Routing: Bei manchen Setups, wie z. B. GShard, wird der erste Experte anhand einer Softmax-Funktion ausgewählt, der zweite jedoch teilweise zufällig.
- 4. Expertenkapazität: Die Festlegung einer festen Obergrenze dafür, wie viele Token ein einzelner Experte verarbeiten kann, verhindert Engpässe. Ist ein Experte voll, wird das Token an die nächste Schicht weitergeleitet.
Stabilität beim Fine-Tuning und bei der Befehlsoptimierung
Das Fine-Tuning von MoE-Modellen ist komplexer als das von dichten Modellen. Sie neigen generell eher zum Überlernen. Forschungsergebnisse zeigen, dass das Aktualisieren nur der MoE-Parameter die Leistung sogar verschlechtern kann, da diese Schichten nur einen kleinen Teil der gesamten Netzwerktiefe ausmachen. Das Aktualisieren von Nicht-MoE-Feed-Forward-Netzwerken führt oft zu besseren Ergebnissen.
Die Befehlsoptimierung hat sich besonders bei spärlichen Architekturen als vorteilhaft erwiesen. Experimente, bei denen dichte T5-Modelle mit MoE-Versionen verglichen wurden, zeigten: Während dichte Modelle nach einer standardmäßigen Feinabstimmung vielleicht besser abschneiden, übertreffen befehlsoptimierte MoE-Modelle ihre dichten Pendants deutlich. Das deutet darauf hin, dass sich das Potenzial von MoE-Modellen durch hochwertige Befehlssätze effektiver ausschöpfen lässt als durch herkömmliche Feinabstimmungsmethoden.
