https://www.youtube.com/watch?v=vHF7gGvAqu8
Kurz gesagt: MoE ersetzt den einen großen Feed-Forward-Block, den jeder Transformer-Layer normalerweise hat, durch mehrere kleinere "Experten"-Netzwerke plus einen Router, der pro Token entscheidet, welche 1-2 Experten für dieses Token zuständig sind. Nicht alle Experten rechnen für jedes Token — nur eine kleine Auswahl.
Das Kernprinzip in drei Schritten:
1. Viele Experten statt einem großen FFN. Statt eines einzigen dichten Feed-Forward-Netzwerks pro Layer gibt es z. B. 8 oder 64 parallele FFN-Kopien ("Experten") mit identischer Architektur, aber eigenen Gewichten.
2. Ein Router wählt aus. Für jedes Token berechnet ein kleines Gating-Netzwerk (der Router) einen Score pro Experte und schickt das Token nur an die Top-k (meist k=1 oder 2) mit den höchsten Scores. Die Outputs dieser gewählten Experten werden gewichtet kombiniert.
3. Sparse Activation = viele Parameter, wenig Rechenaufwand. Das Modell kann als Ganzes riesig sein (Milliarden Parameter über alle Experten), aber pro Token wird nur ein Bruchteil davon tatsächlich aktiviert und gerechnet. Man bekommt also die Kapazität eines sehr großen Modells zu den Rechenkosten eines viel kleineren.Zwei wichtige Zusatzpunkte, die im Bild nicht drinstecken:

Load Balancing ist das eigentliche Ingenieursproblem. Ohne Gegenmaßnahme neigt der Router dazu, immer dieselben ein, zwei Experten zu bevorzugen ("Experten-Kollaps") — die anderen lernen nie richtig mit. Deshalb gibt es beim Training einen zusätzlichen Auxiliary-Loss, der eine gleichmäßige Auslastung aller Experten erzwingt.
Parameter vs. FLOPs entkoppeln sich. Das ist der eigentliche Sinn der Übung: Ein MoE-Modell mit z. B. 8x47B Parametern hat die Gesamtkapazität eines riesigen Modells, aktiviert pro Token aber nur ~13B — die Inferenzkosten bleiben also nah an einem viel kleineren dichten Modell. Bekannte Beispiele: Mixtral 8x7B, DeepSeek-V3, vermutlich auch GPT-4.
Stell dir zwei Wege vor, ein Modell größer und klüger zu machen:
Weg 1 (klassisches FFN): Du machst den einen Feed-Forward-Block einfach dicker — mehr Neuronen, mehr Parameter. Aber: jedes einzelne Token muss durch den kompletten, riesigen Block. Größeres Modell = proportional mehr Rechenaufwand für jede Vorhersage. Das limitiert, wie groß man ein Modell praktisch machen kann, bevor Training und Inferenz unbezahlbar langsam werden.
Weg 2 (MoE): Du baust stattdessen viele kleinere Blöcke ("Experten") und lässt pro Token nur 1-2 davon rechnen. Das Modell als Ganzes ist riesig (viele Experten mit vielen Parametern), aber der tatsächliche Rechenaufwand pro Token bleibt klein, weil die meisten Experten für dieses Token einfach gar nicht angefasst werden.
Die Kernidee dahinter: Nicht jedes Token braucht das gleiche Wissen. Ein Token in einem Code-Kontext braucht andere "Fähigkeiten" als eines in einem Gedicht. Bei einem normalen FFN muss trotzdem der gesamte Apparat für beide durchlaufen werden — viel davon ist für den jeweiligen Fall irrelevant. MoE lässt das Modell stattdessen selbst lernen: "für diese Art von Token sind Experte 3 und 4 zuständig, der Rest kann sich sparen."
Der Effekt in einem Satz: Du bekommst die Kapazität (das Weltwissen, die Fähigkeiten) eines viel größeren Modells, zahlst aber nur die Rechenkosten eines viel kleineren — weil pro Token nur ein Bruchteil der Parameter aktiv ist. Das ist der einzige Grund, warum Modelle wie Mixtral oder DeepSeek so gut skalieren, ohne dass Training und Antwortzeit explodieren.