Zum Inhalt springen
Kurzer Hinweis: flozi00 TechHub ist ein Solo-Nebenprojekt neben einem Vollzeitjob — persönliche Lernnotizen, keine offiziellen Aussagen. Kritische Schritte selbst prüfen.

Muse Spark Open: Normerhaltende Gates sind keine Normgarantie

Attention, latente Experts und Residualgates von Muse Spark Open nachvollziehen, ihre Varianzannahmen herleiten und die Normierungsreihenfolge für Kernels erklären.

7 Min. Lesezeitflozi00
aillmarchitecturemusemoeattentionnormalizationinference

KI-Hinweis: Dieser Artikel wurde mit Unterstützung generativer KI erstellt. Redaktionell verantwortlich: Florian Zimmermeister (flozi00). Impressum und Kontakt.

Meta veröffentlichte Muse Spark Open am 15. Oktober 2026. Seine öffentliche Model Card beschreibt ein multimodales MoE mit Textausgabe, 816 Milliarden Gesamtparametern und 42 Milliarden aktiven Parametern. Das interessante Low-Level-Detail ist hier die Kontrolle der Signalgrößen: Attention-Gates, Routing-Gewichte und Residualgates sind drei unterschiedliche Operationen, ergänzt durch Normierung an mehreren klar getrennten Stellen.12

Dies ist eine Prüfung der öffentlichen Implementierung, Stand 18. Oktober 2026, anhand der Transformers-Revision d4804f9d76b8c071b993d813e9e87067b780cbee. Die Hub-API nennt die Checkpoint-Revision 0fb02478b02565b2ce7fc57e6051c91172774ac9; der direkte Zugriff auf deren Konfiguration scheiterte jedoch an fehlender Autorisierung. Wir haben keine zugriffsbeschränkten Dateien geöffnet, Gewichtstensoren untersucht oder Inferenz ausgeführt. Explizit als Konfigurations-Defaults bezeichnete Dimensionen sind im Folgenden keine direkte Prüfung der gespeicherten Checkpoint-Konfiguration.345

Dokumentierte Dimensionen, Implementierungs-Defaults und drei Gates

Die öffentliche Model Card dokumentiert 62 Sprach-Layer, Breite 8.192, 128 Query-Heads, 16 KV-Heads mit Breite 64 sowie acht ausgewählte Experts aus 256. Die Konfigurations-Defaults der Implementierung verwenden einen Expert-Raum und Expert-Zwischenbreiten von jeweils 4.096. NVIDIAs öffentliche Integrationsdokumentation beschreibt unabhängig davon ebenfalls den schmaleren Expert-Pfad.256

Technische Tabellen und Formeln verwenden die internationale Zahlenschreibweise mit Dezimalpunkt und gegebenenfalls Komma als Tausendertrennzeichen.

Mechanismus im geprüften CodeForm / GeltungsbereichAbhängig vom aktuellen Token?
Attention-Ausgabegate[B,T,8192][B,T,8192], ein Wert je AusgabekoordinateJa, lineare Projektion mit anschließendem Sigmoid
MoE-Router[BT,256][BT,256] Scores, acht ausgewählte ExpertsJa, Sigmoid-Scores und Top-k-Auswahl
ResidualgateGelernter [8192][8192]-Vektor je Zweig und LayerNein; feste gelernte Koeffizienten bei der Inferenz

Ein Residualgate ist somit weder eine Attention-Maske noch ein Expert-Router oder ein anfrageabhängiger Early Exit. Jeder Decoder-Layer besitzt separate Residualgates nach Attention und FFN. Die Implementierung berechnet jeden Zweig, bevor sie ihn mit dem Residualpfad mischt. Ein kleines Gate überspringt daher nicht automatisch die Kernels dieses Zweigs.4

Zwei Normierungsreihenfolgen implementieren verschiedene Funktionen

Für den Feature-Vektor x∈RDx\in\mathbb{R}^D sei die parameterfreie RMS-Normierung RϵR_\epsilon wie unten definiert. DγD_\gamma bezeichne die Diagonalmatrix mit Einträgen 1+γi1+\gamma_i. Muse verwendet sowohl eine am Ausgang als auch eine am Eingang skalierte Variante.4

Rϵ(x)=xD−1∑ixi2+ϵ,Cγ(x)=DγRϵ(x),Iγ(x)=Rϵ(Dγx).\begin{aligned} R_\epsilon(x)&=\frac{x}{\sqrt{D^{-1}\sum_i x_i^2+\epsilon}},\\ C_\gamma(x)&=D_\gamma R_\epsilon(x),\\ I_\gamma(x)&=R_\epsilon(D_\gamma x). \end{aligned}

MuseSparkTextCenteredRMSNorm implementiert CγC_\gamma. „Centered“ bezieht sich auf die nullzentrierte Gain-Parametrisierung 1+γ1+\gamma, nicht auf das Abziehen des Mittelwerts der Eingabe-Features. MuseSparkTextInputScaledRMSNorm implementiert die andere Reihenfolge, IγI_\gamma. Skalieren vor der Normierung verändert gegenüber Skalieren danach den Nenner und damit den Ausgabebetrag. Bei demselben diagonalen Gain sind beide Ausgaben über reellen Zahlen kollinear, aber im Allgemeinen nicht gleich.

Beispiel ohne Epsilon und Rundung: Für x=(1,1)x=(1,1) und Dγ=diag⁡(2,1)D_\gamma=\operatorname{diag}(2,1) gilt Cγ(x)=(2,1)C_\gamma(x)=(2,1), aber Iγ(x)=(2,1)/2.5I_\gamma(x)=(2,1)/\sqrt{2.5}. Eine kanalweise Skalierung über RMSNorm hinweg zu verschieben, ist keine harmlose algebraische Vereinfachung. Die eingangsskalierte Implementierung rundet den skalierten Vektor zudem ausdrücklich auf den Eingabedatentyp, bevor sie die Normierung in FP32 reduziert. Selbst Gleichheit über reellen Zahlen würde deshalb keine Bitgleichheit belegen.4

Attention: jeden Head normieren, jede Koordinate gewichten

Für Hidden States der Form [B,T,8192][B,T,8192] erzeugt die dokumentierte Geometrie Q mit Form [B,128,T,64][B,128,T,64] und K/V mit Form [B,16,T,64][B,16,T,64]. Acht Query-Heads teilen sich einen KV-Head. Die geprüfte Implementierung wendet gewichtsfreie RMSNorm auf Q und K an, multipliziert Q mit qk_scale_factor und verwendet den Attention-Skalenfaktor 64−1/264^{-1/2}. RoPE wird bedingt angewendet: Für Layer mit konfiguriertem RoPE-Theta null übergibt das Modell keine Rotary-Embeddings.24

Nach der Attention normiert o_norm jeden Head-Ausgang mit Breite 64. Das Ergebnis wird zusammengefasst und mit σ(WGu)\sigma(W_Gu) multipliziert, wobei uu die normierte Zweigeingabe ist. Die Gate-Projektion liefert je Token 8.192 Werte, nicht nur 128 skalare Head-Gates. Danach folgt die Ausgabeprojektion. Vor der Residualmischung wendet der Decoder eine weitere parameterfreie RMSNorm über die Breite 8.192 an.4

a=Rbranch ⁣(WO[concat⁡hRhead(Ah)⊙σ(WGu)]).a=R_{\rm branch}\!\left( W_O\left[\operatorname{concat}_h R_{\rm head}(A_h) \odot\sigma(W_Gu)\right]\right).

Head-Normierung, dynamisches Koordinatengate, Ausgabeprojektion und Zweignormierung sind nicht austauschbar. Insbesondere verändert eine einzelne Normierung der zusammengefassten Attention-Ausgabe statt einer Normierung je Head, welche Koordinaten einen gemeinsamen Nenner erhalten. Ein Gate nach WOW_O würde eine andere Menge von Kanälen gewichten.

Latente Experts: Normierung vor der gewichteten Summe

Der Router liest die Zweigeingabe in voller Breite. Davon getrennt projiziert der MoE-Pfad 8.192 → 4.096, wendet eine ausgangsskalierte Centered-RMSNorm an und verteilt Tokens auf die ausgewählten Experts. Für die dokumentierte beziehungsweise voreingestellte Geometrie haben Expert-Gewichtstensoren die Formen [256,8192,4096][256,8192,4096] für gepackte Gate-/Up-Projektionen und [256,4096,4096][256,4096,4096] für Down-Projektionen. Jeder Expert ist ein SwiGLU im Expert-Raum mit Breite 4.096, kein separates FFN mit voller Breite 8.192 → 4.096 → 8.192.456

Es sei z=Cpre(P↓u)z=C_{\rm pre}(P_{\downarrow}u). Der ausgewählte Expert berechnet das folgende fe(z)f_e(z). Entscheidend ist, dass die Implementierung die eingangsskalierte RMSNorm auf jeden Expert-Ausgang anwendet, bevor sie mit dessen Routing-Gewicht multipliziert und akkumuliert. Dasselbe Normierungsmodul beziehungsweise derselbe Gain-Vektor wird dabei für alle Experts verwendet. Anwendung pro Expert bedeutet hier nicht 256 separate gelernte Gain-Vektoren.4

fe(z)=Wd,e[SiLU⁡(Wg,ez)⊙Wu,ez],m=P↑∑e∈S(u)pe Iexpert(fe(z)).\begin{aligned} f_e(z)&=W_{d,e}\left[\operatorname{SiLU}(W_{g,e}z)\odot W_{u,e}z\right],\\ m&=P_{\uparrow}\sum_{e\in S(u)}p_e\,I_{\rm expert}(f_e(z)). \end{aligned}

Die FP32-Router-Logits werden mit output_multiplier multipliziert und anschließend durch Sigmoid abgebildet. Ein Korrektur-Bias beeinflusst nur die Top-k-Auswahl. Für die Mischgewichte werden die originalen Sigmoid-Scores ausgewählt, durch ihre ausgewählte Summe plus 10−1510^{-15} geteilt und mit routed_scaling_factor skaliert. Derselbe Konfigurationsfeldname an anderer Stelle ist kein Grund, die Skalierung hier wegzulassen.4

Die gewichtete Mischung darf nicht durch eine Normierung nach der Aggregation ersetzt werden:

∑epeR(fe)≠R ⁣(∑epefe)in general.\sum_e p_eR(f_e)\ne R\!\left(\sum_e p_ef_e\right) \quad\text{in general}.

Ein einfaches Gegenbeispiel mit Epsilon null verwendet gleiche Gewichte und Expert-Ausgaben (10,0)(10,0) sowie (0,1)(0,1). Einzeln normiert ergibt sich die Mischung (1/2,1/2)(1/\sqrt2,1/\sqrt2). Wird stattdessen die unnormierte Mischung normiert, entsteht (10,1)/50.5(10,1)/\sqrt{50.5}. Die Richtungen unterscheiden sich. Das ist eine Korrektheitsbedingung für Inferenz-Kernels, nicht nur eine Stilfrage zur Position von RMSNorm.

Residualgates: die normerhaltende Intuition sorgfältig herleiten

Für einen Residualvektor rr und einen nachnormierten Zweigvektor bb speichert MuseSparkResidualGate einen gelernten Vektor gg. Die Temperatur τ\tau stammt aus der Konfiguration, mit Default 0,3. Der Konstruktor setzt die Untergrenze auf δ=10−3\delta=10^{-3}. Alle folgenden Operationen erfolgen koordinatenweise.45

wi=gi/τ,βi=σ(wi),αi=max⁡ ⁣(σ(−wi)(1+βi),δ),yi=αiri+βibi.\begin{aligned} w_i&=g_i/\tau, & \beta_i&=\sigma(w_i),\\ \alpha_i&=\sqrt{\max\!\left(\sigma(-w_i)(1+\beta_i),\delta\right)}, &y_i&=\alpha_i r_i+\beta_i b_i. \end{aligned}

Über reellen Zahlen gilt σ(−wi)=1−βi\sigma(-w_i)=1-\beta_i. Solange die Untergrenze nicht greift, ist αi=1−βi2\alpha_i=\sqrt{1-\beta_i^2} und damit αi2+βi2=1\alpha_i^2+\beta_i^2=1. Das ist keine konvexe Interpolation: Die Koeffizienten summieren sich im Allgemeinen nicht zu eins. Es ist auch keine gewöhnliche Residualaddition r+br+b. Der Clamp hält αi≥10−3\alpha_i\ge\sqrt{10^{-3}}; sobald er greift, gilt selbst die Quadratsummenidentität nicht mehr exakt.

Die Varianzintuition benötigt Annahmen. Es seien ri,bir_i,b_i mittelwertfrei, mit Varianz eins und Korrelation ρi\rho_i; die Untergrenze sei inaktiv. Dann gilt:

Var⁡(yi)=αi2+βi2+2αiβiρi=1+2αiβiρi.\operatorname{Var}(y_i) =\alpha_i^2+\beta_i^2+2\alpha_i\beta_i\rho_i =1+2\alpha_i\beta_i\rho_i.

Nur wenn der Kovarianzterm verschwindet, ergibt sich Varianz eins. RMS-Normierung macht Residual- und Zweigvektor nicht unkorreliert, zieht ihre Mittelwerte nicht ab und stellt keine identischen Varianzen je Koordinate sicher. „Normerhaltend“ ist deshalb eine Intuition zur Koeffizientenkonstruktion unter einem statistischen Modell, keine Garantie, dass jeder Forward-Pass die Vektornorm erhält.

Für ein beispielhaftes skalares Gate β=1/2\beta=1/2 ist α=3/2\alpha=\sqrt3/2. Gleich lange orthogonale Zweig-/Residualvektoren behalten ihre quadrierte Norm. Perfekt ausgerichtete Vektoren vervielfachen sie dagegen ungefähr mit 1,866, entgegengesetzte ungefähr mit 0,134. Das sind hergeleitete Geometriebeispiele, keine Messungen trainierter Muse-Gates oder -Aktivierungen.

Der vollständige Layer besitzt zwei getrennt normierte Residualupdates

Zunächst normiert der Layer die Eingabe, berechnet Attention, normiert deren Ausgabe und wendet das Attention-Residualgate an. Anschließend normiert er den neuen Residualstrom, führt das latente MoE aus, wendet die eingangsskalierte FFN-Ausgabenormierung an und verwendet ein anderes Residualgate. Die FFN-Ausgabenormierung liegt außerhalb der Expert-Mischung und erfüllt eine andere Aufgabe als die Normierung jedes einzelnen Experts.4

Eine Portierung, die Router und Matrixgrößen beibehält, aber eines der Updates durch hidden += branch ersetzt, implementiert folglich nicht dasselbe Modell. Dasselbe gilt, wenn die Expert-Normierung entfällt, weil später ohnehin eine Zweignormierung folgt. Ähnlich aussehende Graphfragmente besitzen unterschiedliche Reduktionsachsen, Gain-Positionen und Rundungsgrenzen.

Konsequenzen für Serving und Kernel-Arbeit

Die geprüfte Transformers-Implementierung schützt Residualgate-Module, Router-Gewichte und Korrektur-Bias als FP32-Module. Ihre Normierungsklassen akkumulieren in FP32 und geben den Eingabedatentyp zurück. Daraus folgt nicht pauschal, dass jede Runtime sämtliche Aktivierungen oder den gesamten Residualstrom in FP32 speichert. NVIDIAs Integration beschreibt einen FP32-Residualstrom; eine Portierung muss den Präzisionsvertrag ihrer konkreten Zielimplementierung erhalten.46

Ein Kernel kann kompatible Projektionen, Dispatch und Reduktionen fusionieren. Dabei muss er aber Head- gegenüber Gesamtvektor-Achsen, Expert-Normierung vor der Mischung, statische gegenüber tokenabhängigen Gates, Clamp-Semantik und relevante Datentypgrenzen erhalten. Exakte Transformationen, die einen festen Gain in eine benachbarte lineare Abbildung aufnehmen, benötigen den tatsächlichen umgebenden Graphen. Sie rechtfertigen nicht, einen eingabeabhängigen RMS-Nenner über eine Expert-Summe zu verschieben. Selbst das Umschreiben des Gate-Produkts zu 1−β21-\beta^2 kann nahe der Sättigung das Gleitkommaverhalten ändern.

Diese Gates verringern weder die Zahl der KV-Heads noch beseitigen sie residente Expert-Gewichte. Allein aus der öffentlichen Attention-Geometrie ergeben sich für getrennte BF16-K/V 2×16×64×2=40962\times16\times64\times2=4096 Bytes je vorgehaltenem Token, Attention-Layer und Sequenz, vor Paging, Replikation oder weiteren Zuständen. Die Vorhaltepolitik hängt weiterhin von lokaler/globaler Layer-Konfiguration und Cache-Implementierung ab. Dieser Artikel leitet aus der nicht zugänglichen Konfiguration kein Cache-Budget des gesamten Checkpoints ab.

Ein konkreter Kontrast ist Nemotron 3.5 Bolt: schmalere geroutete Experts, aber ein Shared Expert voller Breite und andere Gewichtsformate. Step-5-Preview zeigt den davon getrennten Unterschied zwischen selektiven Attention-Zugriffen und vorgehaltenem KV-Speicher.

Das praktische Ergebnis ist ein Funktionsvertrag: In der öffentlichen Muse-Spark-Open-Implementierung gehören Normierungspositionen und Gate-Semantik zur Architektur. Die Gleichungen erklären Verhalten und Grenzen, belegen aber weder bessere Aufgabenqualität noch schnellere Inferenz. Wir haben ausschließlich mathematische Prüfungen durchgeführt, keine Checkpoint-Paritätstests, Modellevaluierung oder GPU-Benchmarks. Gewichtsfreigabe, Muse Model License und unterstützte Runtime-Revisionen bleiben Voraussetzungen für den Betrieb.2

Primärquellen und Prüfgrenze

Footnotes

  1. Meta release announcement, October 15, 2026. ↩

  2. Public Muse Spark Open model card: release, geometry, formats and access terms; checked October 18, 2026. ↩ ↩2 ↩3 ↩4

  3. Hub model metadata; revision identification only, not access to gated configuration or tensors. ↩

  4. Transformers Muse Spark implementation at d4804f9d76b8c071b993d813e9e87067b780cbee: normalization, experts, gates and decoder order. ↩ ↩2 ↩3 ↩4 ↩5 ↩6 ↩7 ↩8 ↩9 ↩10 ↩11 ↩12

  5. Transformers configuration defaults at the same revision; not independently read from the gated checkpoint. ↩ ↩2 ↩3 ↩4

  6. NVIDIA NeMo AutoModel integration: documented latent expert path and FP32 residual stream; checked October 18, 2026. ↩ ↩2 ↩3