Differential Transformer
Der Differential Transformer subtrahiert eine Softmax-Aufmerksamkeitskarte von einer anderen, um Aufmerksamkeitsrauschen zu unterdrücken und so den Abruf aus langen Kontexten und die Quantisierung zu verbessern.
Der Differential Transformer, auch DIFF Transformer genannt, ist eine Transformer-Architektur, deren Attention-Köpfe zwei Softmax-Attention-Karten berechnen und voneinander subtrahieren. Dadurch wird das Gewicht aufgehoben, das beide Karten über irrelevanten Kontext verteilen. Tianzhu Ye, Li Dong, Furu Wei und Kollegen von Microsoft Research und der Tsinghua-Universität stellten die Architektur im Oktober 2024 in Differential Transformer vor, einem auf der ICLR 2025 als mündlicher Vortrag präsentierten Paper. Das Design ist von Differenzverstärkern und Kopfhörern mit Geräuschunterdrückung inspiriert, die zwei Signale voneinander subtrahieren und so das gemeinsame Rauschen auslöschen. Bei der Sprachmodellierung benötigte ein DIFF Transformer etwa 65 % der Parameter oder Trainings-Tokens eines herkömmlichen Transformers, um denselben Verlust zu erreichen: Ein Modell mit 6,8 Milliarden Parametern erreichte dasselbe Ergebnis wie ein Transformer mit 11 Milliarden Parametern.
So funktioniert differentielle Aufmerksamkeit#
Standardmäßige Self-Attention weist jedem Token ein nicht negatives Gewicht zu. Daher entfällt immer ein Teil des Gewichts auf irrelevante Token, was die Autoren als Aufmerksamkeitsrauschen bezeichnen. Differential Attention teilt die Query- und Key-Projektionen jedes Heads in zwei Hälften, berechnet aus jedem Paar eine Softmax-Karte und kombiniert die Werte nach der Formel (Karte1 − λ × Karte2) × V. Beide Karten weisen denselben irrelevanten Token Gewicht zu, sodass die Subtraktion dieses Gewicht aufhebt, während das Gewicht, das nur Karte1 zuweist, erhalten bleibt. Da jede Karte die Summe 1 hat, ergibt sich für jede Zeile des Resultats die Summe 1 − λ; einzelne Gewichte können negativ sein:
import torch
torch.manual_seed(0)
n, d, lam = 6, 8, 0.8 # 6 tokens, head size 8, lambda near the paper's 0.8 initialization
q1, k1, q2, k2 = torch.randn(4, n, d)
v = torch.randn(n, 2 * d) # values are twice as wide as each query-key pair
# Two ordinary softmax attention maps from separate query and key projections
map1 = torch.softmax(q1 @ k1.T / d**0.5, dim=-1)
map2 = torch.softmax(q2 @ k2.T / d**0.5, dim=-1)
# Subtracting cancels weight that both maps place on the same tokens
diff = map1 - lam * map2
out = diff @ v
print(f"Each row sums to {diff.sum(dim=-1)[0]:.2f}; {(diff < 0).sum().item()} of {n * n} weights are negative")Die Ausgabe lautet Each row sums to 0.20; 13 of 36 weights are negative – zwei Eigenschaften, die keine Softmax-Aufmerksamkeitskarte haben kann. Im tatsächlichen Modell wird λ anhand von vier kleinen Vektoren gelernt und beginnt für Schicht l bei 0.8 − 0.6 × exp(−0.3 × (l − 1)), sodass tiefere Schichten näher bei 0.8 starten. Die Ausgabe jedes Heads wird separat normalisiert, was die Studie als GroupNorm bezeichnet, und anschließend mit (1 − λ bei der Initialisierung) skaliert, damit die Gradienten dieselbe Größenordnung wie bei einem Standard-Transformer haben. Das Modell verwendet halb so viele Heads, die jeweils doppelt so breite Werte haben, sodass die Anzahl der Parameter der Baseline entspricht. Jede Karte ist gewöhnliche Softmax-Attention, daher verwenden Implementierungen erneut Flash-Attention-Kernels. Der Trainingsdurchsatz auf H100-GPUs lag 6 % bis 12 % unter dem eines gleich großen Transformers.
Berichtete Vorteile#
Bei einem Nadel-im-Heuhaufen-Test mit 6 Nadeln und 2 Fragen in einem Kontextfenster mit 4K Token erzielte der DIFF Transformer 0.85 gegenüber 0.55 bei einem Standard-Transformer. Die Aufmerksamkeitsanalyse der Studie führte das auf die Fokussierung zurück: Das Modell richtete 0.27 bis 0.40 seiner Aufmerksamkeit auf die Antwort, verglichen mit 0.03 bis 0.09 beim Transformer. Außerdem erzeugte es weniger Halluzinationen bei der Textzusammenfassung und Fragebeantwortung. Beim Few-Shot-In-Context-Learning war es genauer und weniger anfällig für die Reihenfolge der Beispiele.
Auch die Ausreißer bei den Aktivierungen wurden kleiner. Das größte Attention-Logit betrug 38.8 gegenüber 318.0 bei einem Standard-Transformer; die größte Aktivierung des Hidden State betrug 1,688 gegenüber 3,609. Bei einer Quantisierung der Attention-Logits auf 4 Bit erreichte das Modell die Genauigkeit eines Standard-Transformers mit 6 Bit und übertraf einen 4-Bit-Transformer bei der Genauigkeit um etwa 25 %.
Dieses Ergebnis ist für die Modellquantisierung wichtig, da einige wenige extreme Aktivierungen den Wertebereich festlegen, den alle übrigen Werte gemeinsam nutzen müssen. Dasselbe gilt für Bildverarbeitungsmodelle: Wenn Ultralytics YOLO26 mit quantize=8 exportiert wird, kalibriert der Exporter die Aktivierungsbereiche anhand von Bildern aus dem Datensatz data und empfiehlt mindestens 300 Bilder. quantize="w8a16" belässt die Gewichte bei 8 Bit und die Aktivierungen bei 16 Bit für LiteRT-, Core ML- und QNN-Exporte.
DIFF Transformer im Vergleich zu verwandten Begriffen#
- Diffusion Transformer (DiT): Ein Transformer, der in Diffusionsmodellen für die Bild- und Videogenerierung das U-Net ersetzt.
- Differential Privacy: Eine mathematische Datenschutzgarantie für Trainingsdaten.
- Sparse Attention: Bewertet nur eine festgelegte Teilmenge von Token-Paaren und setzt alle anderen Gewichte von vornherein auf null.
- Linearer variabler Differentialtransformator: Ein elektrischer Sensor, der lineare Verschiebungen misst.










