KI-Modelle und Plattformen
Der Aufstieg von Mixture-of-Experts für effiziente Large Language Modelle

Von
Aayush Mittal Mittal
In der Welt der natürlichen Sprachverarbeitung (NLP) war die Entwicklung größerer und leistungsfähigerer Sprachmodelle der treibende Faktor hinter vielen jüngsten Fortschritten. Allerdings werden die Rechenanforderungen für das Training und die Inferenz dieser Modelle immer anspruchsvoller, wenn sie in Größe wachsen, und stoßen an die Grenzen der verfügbaren Hardware-Ressourcen.
Hier kommt die Mixture-of-Experts-Technik (MoE) ins Spiel, die das Ziel hat, diese Rechenlast zu verringern und gleichzeitig das Training größerer und leistungsfähigerer Sprachmodelle zu ermöglichen. Im Folgenden werden wir MoE, seine Ursprünge, seine Funktionsweise und seine Anwendungen in transformerbasierten Sprachmodellen diskutieren.
Die Ursprünge von Mixture-of-Experts
Das Konzept von Mixture-of-Experts (MoE) kann bis in die frühen 1990er Jahre zurückverfolgt werden, als Forscher die Idee der bedingten Berechnung erforschten, bei der Teile eines neuronalen Netzes basierend auf den Eingabedaten selektiv aktiviert werden. Eine der Pionierarbeiten auf diesem Gebiet war der “Adaptive Mixture of Local Experts“-Artikel von Jacobs et al. aus dem Jahr 1991, der einen überwachten Lernrahmen für ein Ensemble von neuronalen Netzen vorschlug, von denen jedes auf eine unterschiedliche Region des Eingaberaums spezialisiert war.
Die Kernidee hinter MoE ist es, mehrere “Experten”-Netzwerke zu haben, von denen jedes für die Verarbeitung eines Teils der Eingabedaten verantwortlich ist. Ein Gating-Mechanismus, typischerweise ein neuronales Netzwerk selbst, bestimmt, welche Experten für eine gegebene Eingabe verarbeitet werden sollen. Dieser Ansatz ermöglicht es dem Modell, seine Rechenressourcen effizienter zu nutzen, indem nur die relevanten Experten für jede Eingabe aktiviert werden, anstatt die gesamte Modellkapazität für jede Eingabe zu nutzen.
Im Laufe der Jahre haben verschiedene Forscher die Idee der bedingten Berechnung erforscht und erweitert, was zu Entwicklungen wie hierarchischen MoEs, Low-Rank-Approximationen für bedingte Berechnung und Techniken zur Schätzung von Gradienten durch stochastische Neuronen und Hard-Threshold-Aktivierungsfunktionen geführt hat.
Mixture-of-Experts in Transformern
Während die Idee von MoE bereits seit Jahrzehnten existiert, ist ihre Anwendung auf transformerbasierte Sprachmodelle relativ neu. Transformere, die zum De-facto-Standard für state-of-the-art-Sprachmodelle geworden sind, bestehen aus mehreren Schichten, von denen jede ein Selbst-Aufmerksamkeitsmechanismus und ein Feed-Forward-Neuronales-Netz (FFN) enthält.
Die Schlüsselinnovation bei der Anwendung von MoE auf Transformere ist es, die dichten FFN-Schichten durch sparse MoE-Schichten zu ersetzen, von denen jede aus mehreren Experten-FFNs und einem Gating-Mechanismus besteht. Der Gating-Mechanismus bestimmt, welche Experten für jeden Eingabetoken verarbeitet werden sollen, wodurch das Modell selektiv nur einen Teil der Experten für eine gegebene Eingabesequenz aktivieren kann.
Eine der ersten Arbeiten, die das Potenzial von MoE in Transformern demonstrierte, war der “Outrageously Large Neural Networks: The Sparsely-Gated Mixture-of-Experts Layer“-Artikel von Shazeer et al. aus dem Jahr 2017. Diese Arbeit führte das Konzept einer sparsely-gated MoE-Schicht ein, die einen Gating-Mechanismus verwendete, der Sparsity und Rauschen zur Expertenauswahl hinzufügte, um sicherzustellen, dass nur ein Teil der Experten für jede Eingabe aktiviert wurde.
Seitdem haben verschiedene andere Arbeiten die Anwendung von MoE auf Transformere weiter vorangetrieben, indem sie Herausforderungen wie Trainingsinstabilität, Lastausgleich und effiziente Inferenz angegangen sind. Beachtenswerte Beispiele umfassen den Switch Transformer (Fedus et al., 2021), ST-MoE (Zoph et al., 2022) und GLaM (Du et al., 2022).
Vorteile von Mixture-of-Experts für Sprachmodelle
Der Hauptvorteil der Verwendung von MoE in Sprachmodellen ist die Fähigkeit, die Modellgröße zu erhöhen, während die Rechenkosten während der Inferenz relativ konstant bleiben. Durch die selektive Aktivierung nur eines Teils der Experten für jeden Eingabetoken können MoE-Modelle die Ausdrucksfähigkeit viel größerer dichter Modelle erreichen, während sie wesentlich weniger Rechenleistung benötigen.
Zum Beispiel betrachten wir ein Sprachmodell mit einer dichten FFN-Schicht von 7 Milliarden Parametern. Wenn wir diese Schicht durch eine MoE-Schicht ersetzen, die aus acht Experten besteht, von denen jeder 7 Milliarden Parameter hat, erhöht sich die Gesamtzahl der Parameter auf 56 Milliarden. Allerdings beträgt die Rechenkosten während der Inferenz nur das Äquivalent eines 14-Milliarden-Parameter-dichten Modells, da nur zwei Experten pro Token aktiviert werden.
Diese Recheneffizienz während der Inferenz ist insbesondere in Bereitstellungsszenarien wertvoll, in denen Ressourcen begrenzt sind, wie z.B. auf Mobilgeräten oder in Edge-Computing-Umgebungen. Darüber hinaus kann die reduzierte Rechenkosten während des Trainings zu erheblichen Energieeinsparungen und einem geringeren CO2-Fußabdruck führen, was mit dem wachsenden Fokus auf nachhaltige KI-Praktiken übereinstimmt.
Herausforderungen und Überlegungen
Während MoE-Modelle vielversprechende Vorteile bieten, kommen ihre Einführung und Bereitstellung auch mit mehreren Herausforderungen und Überlegungen:
- Trainingsinstabilität: MoE-Modelle sind bekanntermaßen anfälliger für Trainingsinstabilitäten im Vergleich zu ihren dichten Gegenstücken. Dieses Problem entsteht durch die sparsame und bedingte Natur der Expertenaktivierungen, was zu Herausforderungen bei der Gradientenübertragung und Konvergenz führen kann. Techniken wie der Router-Z-Loss (Zoph et al., 2022) wurden vorgeschlagen, um diese Instabilitäten zu mildern, aber weitere Forschung ist noch erforderlich.
- Feinabstimmung und Überanpassung: MoE-Modelle neigen dazu, während der Feinabstimmung leichter zu überanpassen, insbesondere wenn die Downstream-Aufgabe ein relativ kleines Datenset hat. Dieses Verhalten wird der erhöhten Kapazität und Sparsity von MoE-Modellen zugeschrieben, was zu einer Überanpassung auf die Trainingsdaten führen kann. Sorgfältige Regularisierung und Feinabstimmungsstrategien sind erforderlich, um dieses Problem zu mildern.
- Speicheranforderungen: Während MoE-Modelle die Rechenkosten während der Inferenz reduzieren können, haben sie oft höhere Speicheranforderungen im Vergleich zu dichten Modellen ähnlicher Größe. Dies liegt daran, dass alle Expertengewichte in den Speicher geladen werden müssen, auch wenn nur ein Teil der Experten für jede Eingabe aktiviert wird. Speicherbeschränkungen können die Skalierbarkeit von MoE-Modellen auf ressourcenbegrenzten Geräten einschränken.
- Lastausgleich: Um optimale Recheneffizienz zu erreichen, ist es wichtig, die Last über die Experten auszugleichen, um sicherzustellen, dass kein einzelner Experte überlastet wird, während andere unterausgelastet bleiben. Dieser Lastausgleich wird typischerweise durch Hilfsverluste während des Trainings und eine sorgfältige Anpassung des Kapazitätsfaktors erreicht, der die maximale Anzahl der Token bestimmt, die jedem Experte zugewiesen werden können.
- Kommunikationsüberkopplung: In verteilten Trainings- und Inferenzszenarien können MoE-Modelle zusätzliche Kommunikationsüberkopplung aufgrund der Notwendigkeit, Aktivierungs- und Gradienteninformationen zwischen Experten auf verschiedenen Geräten oder Beschleunigern auszutauschen, einführen. Effiziente Kommunikationsstrategien und hardwarebewusstes Modelldesign sind erforderlich, um diese Überkopplung zu mildern.
Trotz dieser Herausforderungen haben die potenziellen Vorteile von MoE-Modellen bei der Ermöglichung größerer und leistungsfähigerer Sprachmodelle erhebliche Forschungsanstrengungen ausgelöst, um diese Probleme anzugehen und zu mildern.
Beispiel: Mixtral 8x7B und GLaM
Um die praktische Anwendung von MoE in Sprachmodellen zu veranschaulichen, betrachten wir zwei bemerkenswerte Beispiele: Mixtral 8x7B und GLaM.
Mixtral 8x7B ist eine MoE-Variante des Mistral-Sprachmodells, das von Anthropic entwickelt wurde. Es besteht aus acht Experten, von denen jeder 7 Milliarden Parameter hat, was insgesamt 56 Milliarden Parameter ergibt. Allerdings werden während der Inferenz nur zwei Experten pro Token aktiviert, was die Rechenkosten effektiv auf das Äquivalent eines 14-Milliarden-Parameter-dichten Modells reduziert.
Mixtral 8x7B hat beeindruckende Leistungen gezeigt, indem es das 70-Milliarden-Parameter-Modell Llama übertraf und gleichzeitig viel schnellere Inferenzzeiten bot. Eine anweisungsorientierte Version von Mixtral 8x7B, namens Mixtral-8x7B-Instruct-v0.1, wurde ebenfalls veröffentlicht, was seine Fähigkeiten bei der Befolgung natürlicher Sprachanweisungen weiter verbesserte.
Ein weiteres bemerkenswertes Beispiel ist GLaM (Google (GOOGL ) Language Model), ein großes MoE-Modell, das von Google entwickelt wurde. GLaM verwendet eine decoder-only-Transformer-Architektur und wurde auf einem riesigen 1,6-Billionen-Token-Datenset trainiert. Das Modell erreicht beeindruckende Leistungen bei Few-Shot- und One-Shot-Bewertungen, indem es die Qualität von GPT-3 erreicht, während es nur ein Drittel der Energie benötigt, die zum Trainieren von GPT-3 erforderlich ist.
Der Erfolg von GLaM kann seiner effizienten MoE-Architektur zugeschrieben werden, die es ermöglichte, ein Modell mit einer riesigen Anzahl von Parametern zu trainieren, während die Rechenanforderungen im Rahmen blieben. Das Modell demonstrierte auch das Potenzial von MoE-Modellen, energieeffizienter und umweltfreundlicher als ihre dichten Gegenstücke zu sein.
Die Grok-1-Architektur
Grok-1 ist ein transformerbasierter MoE-Modell mit einer einzigartigen Architektur, die darauf ausgelegt ist, Effizienz und Leistung zu maximieren. Lassen Sie uns in die wichtigsten Spezifikationen eintauchen:
- Parameter: Mit einer atemberaubenden 314-Milliarden-Parameter-Anzahl ist Grok-1 das größte offene LLM bis heute. Dank der MoE-Architektur sind jedoch nur 25 % der Gewichte (ca. 86 Milliarden Parameter) zu jedem Zeitpunkt aktiv, was die Verarbeitungskapazitäten erhöht.
- Architektur: Grok-1 verwendet eine Mixture-of-8-Experts-Architektur, bei der jeder Token von zwei Experten während der Inferenz verarbeitet wird.
- Schichten: Das Modell besteht aus 64 Transformer-Schichten, von denen jede ein Multi-Head-Aufmerksamkeitsmechanismus und dichte Blöcke enthält.
- Tokenisierung: Grok-1 verwendet einen SentencePiece-Tokenizer mit einer Vokabulargröße von 131.072 Token.
- Einbettungen und Positionscodierung: Das Modell verfügt über 6.144-dimensionale Einbettungen und verwendet rotierende Positionscodierungen, was eine dynamischere Interpretation der Daten im Vergleich zu herkömmlichen festen Positionscodierungen ermöglicht.
- Aufmerksamkeit: Grok-1 verwendet 48 Aufmerksamkeitsköpfe für Abfragen und 8 Aufmerksamkeitsköpfe für Schlüssel und Werte, von denen jeder eine Größe von 128 hat.
- Kontextlänge: Das Modell kann Sequenzen bis zu 8.192 Token in der Länge verarbeiten und verwendet bfloat16-Präzision für effiziente Berechnungen.
Leistung und Implementierungsdetails
Grok-1 hat beeindruckende Leistungen gezeigt, indem es LLaMa 2 70B und Mixtral 8x7B mit einem MMLU-Score von 73 % übertraf, was seine Effizienz und Genauigkeit in verschiedenen Tests unterstreicht.
Es ist jedoch wichtig zu beachten, dass Grok-1 aufgrund seiner enormen Größe erhebliche GPU-Ressourcen benötigt. Die aktuelle Implementierung in der Open-Source-Veröffentlichung konzentriert sich auf die Überprüfung der Korrektheit des Modells und verwendet eine ineffiziente MoE-Schicht-Implementierung, um die Notwendigkeit von benutzerdefinierten Kernels zu vermeiden.
Trotzdem unterstützt das Modell die Aktivierung von Sharding und 8-Bit-Quantisierung, was die Leistung optimieren und die Speicheranforderungen reduzieren kann.
In einer bemerkenswerten Entscheidung hat xAI Grok-1 unter der Apache-2.0-Lizenz veröffentlicht, wodurch seine Gewichte und Architektur der globalen Gemeinschaft für die Nutzung und den Beitrag zugänglich gemacht werden.
Die Open-Source-Veröffentlichung enthält ein JAX-Beispiel-Code-Repository, das zeigt, wie das Grok-1-Modell geladen und ausgeführt werden kann. Benutzer können die Checkpoint-Gewichte mithilfe eines Torrent-Clients oder direkt über den HuggingFace-Hub herunterladen, was den Zugriff auf dieses bahnbrechende Modell erleichtert.
Die Zukunft von Mixture-of-Experts in Sprachmodellen
Da die Nachfrage nach größeren und leistungsfähigeren Sprachmodellen weiterhin wächst, wird die Einführung von MoE-Techniken voraussichtlich weiter an Fahrt gewinnen. Laufende Forschungsanstrengungen konzentrieren sich auf die Lösung der verbleibenden Herausforderungen, wie z.B. die Verbesserung der Trainingsstabilität, die Milderung der Überanpassung während der Feinabstimmung und die Optimierung der Speicher- und Kommunikationsanforderungen.
Eine vielversprechende Richtung ist die Erforschung von hierarchischen MoE-Architekturen, bei denen jeder Experte selbst aus mehreren Sub-Experten besteht. Dieser Ansatz könnte möglicherweise noch größere Skalierbarkeit und Recheneffizienz ermöglichen, während die Ausdrucksfähigkeit großer Modelle beibehalten wird.
Darüber hinaus ist die Entwicklung von Hardware- und Software-Systemen, die für MoE-Modelle optimiert sind, ein aktives Forschungsgebiet. Spezialisierte Beschleuniger und verteilte Trainingsframeworks, die darauf ausgelegt sind, die sparsame und bedingte Berechnung von MoE-Modellen effizient zu verarbeiten, könnten ihre Leistung und Skalierbarkeit weiter verbessern.
Schließlich könnte die Integration von MoE-Techniken mit anderen Fortschritten in der Sprachmodellierung, wie z.B. sparse Aufmerksamkeitsmechanismen, effiziente Tokenisierungsstrategien und multimodale Repräsentationen, zu noch leistungsfähigeren und vielseitigeren Sprachmodellen führen, die in der Lage sind, eine breite Palette von Aufgaben zu bewältigen.
Schlussfolgerung
Die Mixture-of-Experts-Technik hat sich als mächtiges Werkzeug in der Entwicklung größerer und leistungsfähigerer Sprachmodelle erwiesen. Durch die selektive Aktivierung von Experten basierend auf den Eingabedaten bieten MoE-Modelle eine vielversprechende Lösung für die Rechenherausforderungen, die mit der Skalierung dichter Modelle verbunden sind. Zwar gibt es noch Herausforderungen zu überwinden, wie z.B. Trainingsinstabilität, Überanpassung und Speicheranforderungen, aber die potenziellen Vorteile von MoE-Modellen in Bezug auf Recheneffizienz, Skalierbarkeit und Umweltfreundlichkeit machen sie zu einem spannenden Forschungs- und Entwicklungsgebiet.
Da das Feld der natürlichen Sprachverarbeitung weiterhin die Grenzen dessen erweitert, was möglich ist, wird die Einführung von MoE-Techniken wahrscheinlich eine entscheidende Rolle bei der Ermöglichung der nächsten Generation von Sprachmodellen spielen. Durch die Kombination von MoE mit anderen Fortschritten in der Modellarchitektur, Trainingsmethoden und Hardware-Optimierung können wir uns auf noch leistungsfähigere und vielseitigere Sprachmodelle freuen, die in der Lage sind, sich auf natürliche und nahtlose Weise mit Menschen zu verständigen.
Ich habe die letzten fünf Jahre damit verbracht, mich in die faszinierende Welt des Machine Learning und Deep Learning zu vertiefen. Mein Engagement und meine Expertise haben mich dazu geführt, an über 50 verschiedenen Software-Entwicklungsprojekten mit einem besonderen Fokus auf AI/ML beizutragen. Meine anhaltende Neugier hat mich auch zum Bereich der Natural Language Processing hingezogen, einem Feld, das ich weiter erforschen möchte.
Mehr entdecken


xAI Launches Grok Bot, Immer-Ein-AI-Teammitglied Mit Eigenem Cloud-Computer


SpaceX’ Cloud-Geschäft verdreifachte seinen Umsatz und verliert dennoch Geld


Microsoft erweitert Mistral-Deal, um regulierte KI-Käufer zu gewinnen


EU-Parlament baut eigene KI-Plattform für Abgeordnete


Warum die meisten modernen Apps im Zeitalter von KI nutzlos sein werden


Mistral AI sichert 830 Millionen Dollar an Schulden, um Rechenzentrum in Paris zu bauen

