Attention Heads

Wenn ein Sprachmodell einen Satz liest, betrachtet es jedes Wort aus mehreren Blickwinkeln gleichzeitig. Ein Blickwinkel achtet auf grammatische Zusammenhänge, ein anderer auf inhaltliche Bezüge, ein dritter auf die Position im Satz. Jeder dieser parallelen Blickwinkel ist ein Attention Head.

Mehrere Blickwinkel statt einer einzigen Gewichtung

Ein einzelner Attention-Mechanismus berechnet für jedes Wort in einem Satz, wie stark es auf alle anderen Wörter achten soll. Das Ergebnis ist eine Gewichtung: Bestimmte Wörter bekommen viel Aufmerksamkeit, andere wenig. Doch eine einzige Gewichtung reicht nicht aus, um die verschiedenen Beziehungstypen in Sprache abzubilden.

Beispiel: Im Satz "Die Katze, die auf dem Dach saß, sprang herunter" muss ein Modell gleichzeitig erkennen, dass "sprang" sich grammatisch auf "Katze" bezieht (Subjekt-Verb-Beziehung), dass "Dach" den Ort beschreibt (lokale Relation) und dass "herunter" die Richtung von "sprang" präzisiert (Modifikation). Ein einzelner Attention-Mechanismus müsste all diese Beziehungen in einem einzigen Satz von Gewichten unterbringen.

Die Lösung: Der Multi-Head Attention-Mechanismus führt mehrere Attention-Berechnungen parallel durch. Jede dieser parallelen Berechnungen ist ein Attention Head. Jeder Head verfügt über eigene, trainierbare Gewichte und kann sich auf einen anderen Aspekt der Eingabe spezialisieren.

Beispiel: In einem Transformer-Modell mit 12 Heads pro Layer führt jeder Head eine vollständige Attention-Berechnung auf einem Bruchteil der Gesamtdimensionen durch. Die Ergebnisse aller 12 Heads werden anschließend zusammengeführt (konkateniert) und durch eine lineare Projektion auf die ursprüngliche Dimension zurückgebracht.

Wie ein einzelner Head rechnet

Jeder Attention Head erhält die gleiche Eingabe, transformiert sie aber mit eigenen Gewichtsmatrizen in drei verschiedene Darstellungen: eine Abfrage (Query), einen Schlüssel (Key) und einen Wert (Value). Diese drei Darstellungen ermöglichen die Berechnung der Aufmerksamkeitsgewichte.

Der Ablauf innerhalb eines Heads:

  1. Die Eingabe wird mit drei trainierbaren Matrizen multipliziert, um Query-, Key- und Value-Vektoren zu erzeugen.
  2. Für jedes Wort wird das Skalarprodukt seines Query-Vektors mit den Key-Vektoren aller anderen Wörter berechnet. Das ergibt einen Score, der angibt, wie relevant jedes andere Wort ist.
  3. Die Scores werden durch die Wurzel der Key-Dimension geteilt (Skalierung), um numerische Stabilität zu gewährleisten.
  4. Eine Softmax-Funktion wandelt die skalierten Scores in Wahrscheinlichkeiten um. Jedes Wort erhält so eine Verteilung über alle anderen Wörter.
  5. Diese Wahrscheinlichkeiten gewichten die Value-Vektoren. Das Ergebnis ist ein neuer Vektor pro Wort, der Informationen aus dem gesamten Kontext enthält.

Beispiel: Bei einem Modell mit einer Gesamtdimension von 768 und 12 Heads arbeitet jeder Head mit Vektoren der Dimension 64 (768 geteilt durch 12). Die Query-, Key- und Value-Matrizen jedes Heads haben die Größe 768 mal 64. Das Modell lernt 12 verschiedene Sätze solcher Matrizen.

EingabeDimension d
Query (W_Q)d × d_k
Key (W_K)d × d_k
Value (W_V)d × d_v
SkalarproduktQ · Kᵀ / √d_k
SoftmaxGewichtung
AusgabeGewichtete Summe

Spezialisierung durch Training

Attention Heads beginnen mit zufällig initialisierten Gewichten. Während des Trainings passen sich die Gewichte jedes Heads über Backpropagation an die Trainingsdaten an. Dabei entstehen unterschiedliche Spezialisierungen, ohne dass diese explizit vorgegeben werden.

Untersuchungen an BERT und anderen Transformer-Modellen haben verschiedene Spezialisierungsmuster identifiziert:

Beispiel: In BERT-Base (12 Layer, 12 Heads pro Layer, also 144 Heads insgesamt) zeigt die Analyse, dass bestimmte Heads in den unteren Layern auf das direkt folgende oder vorhergehende Wort achten. Sie bilden lokale Abhängigkeiten ab, etwa zwischen Artikel und Substantiv ("der Hund") oder zwischen Präposition und Bezugswort ("auf dem Tisch").

Beispiel: Andere Heads in mittleren Layern reagieren auf Koreferenzen. Im Satz "Maria ging ins Büro. Sie öffnete das Fenster." zeigen diese Heads hohe Aufmerksamkeitswerte zwischen "Sie" und "Maria". Das Modell hat gelernt, Pronomen mit ihren Bezugswörtern zu verknüpfen.

Beispiel: In den oberen Layern finden sich Heads, die auf semantische Rollen achten. Im Satz "Der Koch würzt die Suppe mit Pfeffer" identifiziert ein solcher Head die Beziehung zwischen der Handlung ("würzt"), dem Handelnden ("Koch"), dem Gegenstand ("Suppe") und dem Instrument ("Pfeffer").

Diese Spezialisierung ist kein deterministisches Ergebnis. Verschiedene Trainingsläufe desselben Modells erzeugen unterschiedliche Head-Spezialisierungen. Die Funktion eines Heads lässt sich erst nach dem Training durch Analyse der Aufmerksamkeitsmuster bestimmen.

Wie die Ergebnisse aller Heads zusammenlaufen

Nachdem jeder Head seine eigene Ausgabe berechnet hat, werden alle Head-Ausgaben zu einem einzigen Vektor zusammengefügt. Bei einem Modell mit 12 Heads und einer Head-Dimension von 64 entsteht so ein Vektor der Länge 768 (12 mal 64). Eine zusätzliche lineare Projektion (eine trainierbare Gewichtsmatrix) transformiert diesen konkatenierten Vektor in die endgültige Ausgabe.

Beispiel: GPT-3 nutzt 96 Heads pro Layer bei einer Gesamtdimension von 12.288. Jeder Head arbeitet mit Vektoren der Dimension 128 (12.288 geteilt durch 96). Pro Layer existieren also 96 verschiedene Query-, Key- und Value-Matrizen. Die Ausgaben aller 96 Heads werden konkateniert und durch eine 12.288 mal 12.288 Projektionsmatrix transformiert.

Diese Zusammenführung ist der Grund, warum die Gesamtdimension eines Modells typischerweise ein Vielfaches der Head-Anzahl ist. Die Division muss ohne Rest aufgehen, damit jeder Head den gleichen Anteil der Dimensionen bearbeitet.

Fachliche Einordnung: Die Konkatenation der Head-Ausgaben mit anschließender linearer Projektion entspricht mathematisch einer Blockdiagonalstruktur. Der Multi-Head-Mechanismus kann dadurch verschiedene Unterräume des Repräsentationsraums parallel bearbeiten. Theoretisch könnte ein einzelner Head mit der vollen Dimension dasselbe leisten, in der Praxis konvergiert das Training mit mehreren Heads jedoch schneller und stabiler.

Aufmerksamkeitsmuster sichtbar machen

Die Aufmerksamkeitsgewichte jedes Heads lassen sich als Matrix darstellen. Die Zeilen entsprechen den abfragenden Wörtern (Queries), die Spalten den Zielwörtern (Keys). Jeder Eintrag zeigt, wie viel Aufmerksamkeit ein Wort einem anderen schenkt. Werkzeuge wie BertViz oder Ecco visualisieren diese Matrizen als Heatmaps oder Verbindungsdiagramme.

Beispiel: Bei der Visualisierung des Satzes "The cat sat on the mat because it was tired" in BERT zeigt ein bestimmter Head im Layer 8 eine starke Verbindung zwischen "it" und "cat". Ein anderer Head im selben Layer verbindet "sat" mit "on" und "mat". Die Visualisierung macht sichtbar, dass verschiedene Heads verschiedene Beziehungstypen abbilden.

Diese Visualisierungen haben allerdings Grenzen. Die Aufmerksamkeitsgewichte allein erklären nicht vollständig, wie das Modell Entscheidungen trifft. Die Value-Vektoren, die mit den Gewichten multipliziert werden, tragen ebenfalls wesentliche Information. Hohe Aufmerksamkeit auf ein Wort bedeutet nicht zwingend, dass dieses Wort die Ausgabe stark beeinflusst.

Beispiel: Forschungsarbeiten zeigen, dass manche Heads in Transformer-Modellen einen großen Teil ihrer Aufmerksamkeit auf das erste Token oder auf Satzzeichen richten. Dies geschieht nicht, weil diese Tokens inhaltlich besonders relevant sind, sondern weil sie als eine Art Sammelbecken für überschüssige Aufmerksamkeit dienen. Diese "Sink Tokens" verzerren eine naive Interpretation der Aufmerksamkeitsmuster.

Nicht alle Heads tragen gleich viel bei

Untersuchungen zur Relevanz einzelner Heads zeigen erhebliche Unterschiede in ihrem Beitrag zur Modellleistung. Wenn man einzelne Heads gezielt deaktiviert (auf null setzt), hat das bei vielen Heads kaum messbare Auswirkungen auf die Ergebnisqualität. Nur eine Minderheit der Heads erweist sich als kritisch.

Beispiel: In der Arbeit "Are Sixteen Heads Really Better than One?" (Michel et al., 2019) wurden einzelne Heads in BERT und einem maschinellen Übersetzungsmodell entfernt. Bei BERT ließen sich in den meisten Layern alle bis auf einen Head entfernen, ohne dass die Leistung auf bestimmten Aufgaben signifikant sank. In einigen Layern konnten sogar alle Heads ohne größeren Qualitätsverlust entfernt werden.

Beispiel: Beim sogenannten Head Pruning werden systematisch die Heads identifiziert, deren Entfernung den geringsten Einfluss auf die Modellleistung hat. Diese Heads werden dann permanent deaktiviert. Dadurch sinken der Speicherverbrauch und die Rechenzeit bei Inferenz, während die Qualität erhalten bleibt. In der Praxis lassen sich bei vielen Modellen 20 bis 40 Prozent der Heads entfernen.

Die Redundanz hat eine positive Seite: Sie macht Modelle robuster. Wenn mehrere Heads ähnliche Funktionen übernehmen, fällt der Ausfall einzelner Heads weniger ins Gewicht. Außerdem ermöglicht die Überparametrisierung während des Trainings ein flexibleres Lernen. Das Modell kann verschiedene Lösungswege parallel explorieren.

Architekturvarianten und Head-Anzahl

Die Wahl der Head-Anzahl beeinflusst, wie fein ein Modell verschiedene Beziehungstypen auflösen kann. Mehr Heads bedeuten kleinere Teildimensionen pro Head, aber mehr parallele Blickwinkel. Weniger Heads bedeuten größere Teildimensionen pro Head, aber weniger parallele Perspektiven.

Beispiel: BERT-Base verwendet 12 Heads mit je 64 Dimensionen (Gesamtdimension 768). BERT-Large verdoppelt beides: 16 Heads mit je 64 Dimensionen (Gesamtdimension 1.024). GPT-3 nutzt 96 Heads mit je 128 Dimensionen (Gesamtdimension 12.288). Die Head-Dimension bleibt bei 64 oder 128. Die Skalierung geschieht über die Anzahl der Heads und die Gesamtdimension.

Varianten des Standard-Multi-Head-Mechanismus versuchen, die Effizienz zu verbessern:

Grouped Query Attention

Statt für jeden Head eigene Key- und Value-Matrizen zu trainieren, teilen sich mehrere Heads dieselben Keys und Values. Nur die Query-Matrizen bleiben individuell. Das reduziert den Speicherbedarf während der Inferenz erheblich, weil der Key-Value-Cache kleiner wird.

Beispiel: Ein Modell mit 32 Query-Heads und 8 Key-Value-Gruppen (Grouped Query Attention mit Faktor 4) spart gegenüber Standard Multi-Head Attention 75 Prozent des Key-Value-Cache-Speichers. Modelle wie Llama 2 (70B) und Mistral setzen dieses Verfahren ein.

Multi-Query Attention

Der Extremfall: Alle Heads teilen sich ein einziges Paar aus Key- und Value-Matrizen. Nur die Queries sind individuell. Die Speicherersparnis ist maximal, die Qualität kann bei manchen Aufgaben jedoch leicht sinken.

Grenzen und offene Fragen

Die Interpretation von Attention Heads ist ein aktives Forschungsfeld mit mehreren ungeklärten Aspekten.

Die Zuordnung von Funktionen zu einzelnen Heads ist eine Vereinfachung. Heads arbeiten nicht isoliert. Die Ausgabe eines Heads in einem Layer wird zur Eingabe des nächsten Layers und beeinflusst dort alle Heads. Die tatsächliche Informationsverarbeitung entsteht durch das Zusammenspiel über viele Layer und Heads hinweg. Eine isolierte Betrachtung einzelner Heads erfasst diese Interaktionen nicht.

Beispiel: Das Phänomen der "Induction Heads" (beschrieben von Olsson et al., 2022) zeigt, wie zwei Heads in verschiedenen Layern zusammenarbeiten: Ein Head im frühen Layer kopiert Positionsinformationen, ein Head im späteren Layer nutzt diese Information, um Muster zu vervollständigen. Keiner der beiden Heads erfüllt diese Funktion allein.

Weiterhin ist die optimale Head-Anzahl nicht aus Prinzipien ableitbar. Sie wird empirisch durch Experimente bestimmt. Ob 8, 12, 16 oder 96 Heads optimal sind, hängt von der Aufgabe, der Gesamtdimension und dem Trainingsbudget ab. Es gibt keine Formel, die für einen gegebenen Anwendungsfall die beste Head-Anzahl vorhersagt.

Fachliche Einordnung: Attention Heads ermöglichen eine differenzierte Repräsentation sprachlicher Beziehungen, indem sie den Repräsentationsraum in parallele Unterräume zerlegen. Die Forschung an Head-Spezialisierung, Head-Pruning und alternativen Attention-Varianten liefert sowohl praktische Effizienzgewinne als auch theoretische Einblicke in die Funktionsweise von Transformer-Modellen. Eine vollständige mechanistische Erklärung der Head-Interaktionen über Layer hinweg steht noch aus.


Karl Kratz · 30.05.2025 (aktualisiert 03.04.2026)

Technologie Künstliche Intelligenz Transformer