Aufmerksamkeitsmechanismus: Wie ein Modell Teile der Eingabe miteinander in Beziehung setzt
01

Definition in einem Satz

Operación que pondera qué partes de una entrada resultan más relevantes al construir cada representación o salida.

02

Operative Definition: Aufmerksamkeit als Wechselwirkung zwischen Repräsentationen

Im maschinellen Lernen ist Aufmerksamkeit eine Operation, die berechnet, welche Repräsentationen einer Sequenz zur Aktualisierung einer anderen Repräsentation beitragen sollen. Dazu vergleicht sie Elemente anhand von Scores und kombiniert die ihnen zugeordneten Informationen mit Gewichten, die aus diesen Scores abgeleitet werden. Es handelt sich um einen Rechenmechanismus in einem neuronalen Netz, nicht um die bewusste Fähigkeit, sich auf etwas zu konzentrieren.

Die Metapher menschlicher Aufmerksamkeit kann dabei helfen, sich vorzustellen, dass ein Modell relevante Informationen auswählt. Sie hat jedoch Grenzen. Ein Netz „betrachtet“ eine Eingabe nicht wie ein Mensch und weist nicht zwangsläufig jedem Wort eine stabile semantische Bedeutung oder Wichtigkeit zu. Die Berechnung besteht aus Vektortransformationen und mathematischen Produkten. Welche Funktion sie konkret erfüllt, hängt von Architektur, Daten, Schicht, Attention-Head und Aufgabe ab.

In einem Transformer ermöglicht der Mechanismus, dass Repräsentationen verschiedener Eingabeelemente miteinander interagieren. Ein Element kann Informationen anderer Elemente aufnehmen, sofern Architektur und Masken diese zulassen. Aufmerksamkeit ersetzt nicht die gesamte Verarbeitung eines Netzes: Sie ist Teil eines größeren Systems, zu dem auch Projektionen, Residualverbindungen, Normalisierung und Transformationsnetze gehören können.

03

So wird Aufmerksamkeit berechnet: Queries, Keys und Values

Die übliche Form der skalierten Skalarprodukt-Aufmerksamkeit verwendet drei Gruppen von Vektoren: Queries (Q), Keys (K) und Values (V). Anschaulich wird jede Query mit den verfügbaren Keys verglichen. Die daraus entstehenden Scores bestimmen, wie stark jeder Value zur aktualisierten Repräsentation beiträgt. Q, K und V werden üblicherweise durch gelernte Projektionen aus den Eingaberepräsentationen abgeleitet.

In Kurzschreibweise lautet die Berechnung: Attention(Q, K, V) = softmax(QKᵀ / √dₖ)V. Der Ausdruck lässt sich in einzelne Schritte zerlegen. Zunächst berechnet QKᵀ Skalarprodukte zwischen Queries und Keys. Ein höherer Score bedeutet eine größere Kompatibilität im Sinne dieser Operation. Anschließend werden die Scores durch √dₖ geteilt, wobei dₖ die Dimension der Keys bezeichnet. Dadurch werden die Scores skaliert. Danach normalisiert softmax jede Score-Verteilung zu Gewichten, deren Summe eins ergibt. Schließlich werden diese Gewichte auf V angewendet und die Value-Vektoren miteinander kombiniert.

Die Ausgabe einer Query ist also eine gewichtete Kombination von Values. Sie muss keine Kopie eines einzelnen Elements sein: Mehrere Values können in unterschiedlichen Anteilen beitragen. In einer Sequenz entsprechen die Zeilen der Score-Matrix den Queries und die Spalten den Keys. Eine Maske kann Positionen vor der Normalisierung ausschließen, etwa um zu verhindern, dass eine Position Informationen aus der Zukunft verwendet.

Die Gleichung beschreibt die zentrale Berechnung, legt aber nicht alle Einzelheiten eines Modells fest. Wie Q, K und V erzeugt werden, welche Dimensionen verwendet werden, welche Masken gelten und wie die Ausgaben kombiniert werden, hängt von der Architektur ab. Die Formel hilft daher, die Operation nachzuvollziehen, reicht aber nicht aus, um die Funktionsweise eines vollständigen Systems zu rekonstruieren.

Die Formel Schritt für Schritt lesen

  1. 01Die Repräsentationen projizieren, um Queries, Keys und Values zu erhalten.
  2. 02Kompatibilitätsscores zwischen jeder Query und den zulässigen Keys berechnen.
  3. 03Die Scores skalieren und mit softmax in normalisierte Gewichte umwandeln.
  4. 04Die Values anhand dieser Gewichte kombinieren und aktualisierte Repräsentationen erzeugen.
04

Varianten und Masken: Welche Informationen miteinander verknüpft werden können

Bei der Self-Attention werden Queries, Keys und Values aus derselben Sequenz von Repräsentationen abgeleitet. So können die Elemente dieser Sequenz miteinander interagieren, soweit die Masken dies erlauben. Bei der Cross-Attention stammen die Queries dagegen aus einer Sequenz oder Repräsentation und die Keys und Values aus einer anderen. Diese Konfiguration ermöglicht es einer Komponente, Informationen zu nutzen, die eine andere Komponente erzeugt hat.

Bidirektionale Aufmerksamkeit erlaubt einer Position, andere Positionen der Sequenz auf beiden Seiten zu berücksichtigen, sofern die Implementierung dies nicht einschränkt. Bei kausaler Aufmerksamkeit blockiert eine Maske den Zugriff auf spätere Positionen. In einem autoregressiven Modell lässt sich dadurch die Vorhersage des nächsten Tokens berechnen, ohne dass eine Repräsentation Tokens verwendet, die noch nicht verfügbar sein sollten. Die Maske bestimmt, welche Scores berücksichtigt werden; sie ändert nicht die allgemeine Definition von Q, K und V.

Ein einzelner Attention-Head führt eine eigene Aufmerksamkeitsberechnung aus. Multi-Head-Attention führt mehrere Berechnungen parallel aus, verwendet dafür unterschiedliche Projektionen und kombiniert die Ergebnisse. Die Idee dahinter ist, dem Modell zu ermöglichen, mehrere Repräsentationen von Wechselwirkungen zu bilden. Ohne konkrete Belege sollte man jedoch nicht annehmen, dass jeder Head einer festen semantischen Funktion entspricht, etwa „Subjekte finden“ oder „Namen verfolgen“.

Diese Unterscheidungen beschreiben Architekturentscheidungen und schließen sich nicht in jeder Hinsicht gegenseitig aus. Der Decoder einer Encoder-Decoder-Architektur kann beispielsweise kausale Self-Attention für seine Ausgabesequenz und Cross-Attention verwenden, um auf die Repräsentationen des Encoders zuzugreifen.

Varianten im Vergleich

VarianteHerkunft von Q, K und VWas sich damit beschreiben lässt
Self-AttentionQ, K und V stammen aus derselben Sequenz.Wechselwirkungen zwischen Repräsentationen dieser Sequenz.
Cross-AttentionQ stammt aus einer Repräsentation, K und V aus einer anderen.Nutzung von Informationen aus einer anderen Sequenz oder Komponente.
Kausale AufmerksamkeitDie Maske blendet zukünftige Positionen aus.Vorhersage, ohne auf noch nicht verfügbare spätere Tokens zuzugreifen.
Bidirektionale AufmerksamkeitPositionen können sich abhängig von der Maske in beide Richtungen berücksichtigen.Kontextualisierung anhand zulässiger vorheriger und nachfolgender Positionen.
Multi-Head-AttentionMehrere Sätze von Projektionen und Aufmerksamkeitsberechnungen.Kombination unterschiedlicher erlernter Wechselwirkungen.
05

Drei praktische Beispiele aus unterschiedlichen Aufgaben

Bei der maschinellen Übersetzung kann Aufmerksamkeit dem Decoder helfen, bei der Erzeugung jedes übersetzten Wortes auf die Repräsentationen des Ausgangssatzes zuzugreifen. In einer Encoder-Decoder-Konfiguration stammen die Queries aus der Repräsentation der Ausgabeseite, die Keys und Values dagegen aus den kodierten Repräsentationen des Ausgangssatzes. Dabei muss keine starre Zuordnung von jeweils einem Wort zu einem anderen entstehen: Der Mechanismus kann Informationen aus mehreren Positionen kombinieren.

Bei der autoregressiven Textgenerierung ermöglicht kausale Self-Attention, dass die Repräsentation einer Position den bis dahin verfügbaren Kontext nutzt, ohne spätere Positionen zu berücksichtigen. Bei der Generierung schätzt das Modell auf Grundlage des vorhandenen Kontexts eine Verteilung für das nächste Token. Die kausale Maske regelt den Informationszugriff. Sie bedeutet weder, dass jedes vorherige Token gleich stark beiträgt, noch dass das Modell über ein unbegrenztes Gedächtnis verfügt.

In der Bildverarbeitung kann ein Vision Transformer ein Bild in eine Sequenz von Patch-Repräsentationen umwandeln und diese mit Transformer-Schichten verarbeiten. Durch Self-Attention kann die Repräsentation eines Patches mit den Repräsentationen anderer Patches in Beziehung treten. So lassen sich Wechselwirkungen zwischen Bildregionen modellieren. Das bedeutet nicht, dass jeder Head notwendigerweise ein bestimmtes Objekt erkennt oder dass Patch-Grenzen stets mit Objektgrenzen übereinstimmen.

Die Beispiele zeigen, dass der Mechanismus vielseitig einsetzbar ist, nicht aber, dass jedes Modell ihn auf dieselbe Weise verwendet. Aufgabe und Architektur bestimmen, welche Sequenzen verglichen werden, welche Masken gelten und wie die resultierenden Repräsentationen verwendet werden.

06

Was die Gewichte zeigen – und was sich daraus nicht ableiten lässt

Attention-Gewichte zeigen, wie stark Values bei einer konkreten Operation zur Ausgabe einer Query beitragen. Als Karte visualisiert, können sie helfen, Muster in einer bestimmten Schicht, einem bestimmten Head, einer Eingabe und einer Konfiguration zu untersuchen. Sie sind Daten aus der internen Berechnung. Ihre Interpretation hängt jedoch davon ab, was genau visualisiert wird und in welcher Beziehung diese Operation zur endgültigen Vorhersage steht.

Ein hohes Gewicht lässt sich nicht ohne Weiteres mit „dieses Wort ist für das Modell wichtig“ im menschlichen Sinn gleichsetzen. Die Vorhersage hängt von zahlreichen Operationen ab, und die Values können über mehrere Schichten und Komponenten hinweg transformiert und kombiniert werden. Ebenso ist eine Attention-Karte für sich genommen keine kausale Erklärung: Eine beobachtete Verteilung beweist weder, dass das Verändern von Positionen mit hohen Gewichten die Antwort ändern würde, noch dass die Karte den entscheidenden Grund für die Vorhersage wiedergibt.

Die wissenschaftliche Debatte darüber, ob Aufmerksamkeit als Erklärung dienen kann, lässt sich nicht auf ein einfaches Ja oder Nein reduzieren. Einige Arbeiten stellen infrage, ob Gewichte allein eine hinreichende Erklärung von Vorhersagen darstellen. Andere diskutieren die Annahmen und Kriterien, anhand derer diese Frage bewertet wird. Eine vorsichtige Schlussfolgerung lautet daher: Attention-Gewichte sind ein untersuchbares Signal einer Modelloperation, aber nicht automatisch eine vollständige Erklärung und auch nicht zwangsläufig informationslos.

Bei der Bewertung einer Interpretation helfen konkrete Fragen: Welche Schicht und welcher Head werden betrachtet? Was bedeutet das Gewicht in dieser Operation? Wurde geprüft, was geschieht, wenn die hervorgehobenen Informationen verändert oder entfernt werden? Lässt sich die Schlussfolgerung auch bei anderen Eingaben beobachten? Eine Visualisierung kann eine Analyse anleiten, ersetzt aber weder Verhaltenstests noch eine kausale Begründung.

07

Rechenaufwand und Implementierungsoptimierungen

Bei der üblichen dichten Aufmerksamkeit kann jede Position mit allen anderen zulässigen Positionen der Sequenz verglichen werden. Daher wächst die Zahl der Wechselwirkungen quadratisch mit der Sequenzlänge: Wird die Sequenz doppelt so lang, enthält die Score-Matrix ungefähr viermal so viele Elemente – noch ohne Masken oder Varianten zu berücksichtigen. Rechenaufwand und Speicherung von Zwischenergebnissen hängen zusammen, sind aber nicht dasselbe.

Die quadratische Komplexität beschreibt die standardmäßige dichte Berechnung, nicht jede denkbare Architektur oder Implementierung. Masken können die Zahl der Wechselwirkungen begrenzen, und es gibt Varianten, die für lange Sequenzen andere Verfahren nutzen. Bevor man eine Kostenangabe auf ein konkretes System überträgt, sollte man deshalb klären, welche Art von Aufmerksamkeit und welcher Algorithmus betrachtet werden.

FlashAttention ist eine Implementierungsoptimierung, die den Datentransfer zwischen verschiedenen Speicherebenen berücksichtigt. Sie ordnet die Berechnung neu, um Speichertransfers und den Bedarf an Zwischenspeicher zu reduzieren, und behält dabei die exakte Attention-Operation bei, die sie implementiert. Sie ersetzt diese also nicht durch eine andere, approximative Attention-Operation. Dass die mathematische Berechnung exakt ist, bedeutet nicht, dass alle Implementierungen dieselbe Laufzeit, dieselben Anforderungen oder denselben Speicherbedarf haben.

Operation, Aufwand und Implementierung auseinanderhalten

AspektWas er beschreibtNützliche Frage
AufmerksamkeitsoperationScores, Normalisierung und gewichtete Kombination.Welche Q, K, V und Maske verwendet das Modell?
Komplexität der standardmäßigen dichten BerechnungZahl der Wechselwirkungen und Zwischenergebnisse bei wachsender Sequenz.Geht es um dichte Aufmerksamkeit, und welche Sequenzlänge wird verarbeitet?
ImplementierungsoptimierungWie die Berechnung und der Speicherzugriff organisiert werden.Bleibt die Operation erhalten, oder wird sie auf andere Weise approximiert?
08

Verwandte Begriffe und häufige Missverständnisse

Aufmerksamkeit wird häufig zusammen mit dem Transformer behandelt, weil der Mechanismus ein zentraler Bestandteil dieser Architektur ist, und mit dem Token, weil Positionen in Textmodellen meist Tokens entsprechen. Ein Token ist nicht unbedingt ein vollständiges Wort. Die Vektorrepräsentationen, die in die Berechnung eingehen, stehen mit Embeddings in Zusammenhang. Das Kontextfenster begrenzt, wie viele Elemente ein Modell in einer bestimmten Konfiguration verarbeiten oder verfügbar haben kann.

In multimodalen Systemen können Sequenzen oder Repräsentationen aus unterschiedlichen Modalitäten vorkommen. Cross-Attention bietet eine Möglichkeit, sie miteinander in Beziehung zu setzen, wenn die Architektur Queries aus einer Repräsentation und Keys und Values aus einer anderen ableitet. Ohne Angaben zum konkreten System sollte man weder annehmen, dass alle multimodalen Modelle dasselbe Muster verwenden, noch dass ihre Gewichte von sich aus eine interpretierbare Zuordnung zwischen Modalitäten offenlegen.

Zu den häufigen Missverständnissen gehören, rechnerische Aufmerksamkeit als Bewusstsein des Modells zu bezeichnen, Gewichte als Wahrscheinlichkeiten menschlicher Wichtigkeit zu interpretieren, allen Heads klare semantische Funktionen zuzuschreiben, Cross-Attention mit Self-Attention zu verwechseln und der kausalen Maske eine Gedächtnisfunktion zuzuschreiben. Ebenfalls oft verwechselt werden eine effizientere Implementierung und eine Änderung der mathematischen Definition – obwohl dies unterschiedliche Beschreibungsebenen sind.

09

Praktische Kriterien zur Interpretation einer Attention-Erklärung

Wenn du ein Diagramm oder eine Karte liest, stelle zuerst fest, welche Operation dargestellt wird: Self-Attention oder Cross-Attention, kausale oder bidirektionale Aufmerksamkeit, ein Head oder mehrere. Prüfe, auf welche Positionen zugegriffen werden kann und ob eine Maske angewendet wurde. Unterscheide danach zwischen Scores vor softmax, normalisierten Gewichten und der abschließenden Kombination der Values: Das sind unterschiedliche Dinge.

Frage anschließend, welche Schlussfolgerung gezogen werden soll. Wird lediglich gesagt, dass eine Position in einer bestimmten Operation ein bestimmtes Gewicht erhalten hat, kann die Karte diese Berechnung beschreiben. Wird dagegen behauptet, die Position habe die Vorhersage verursacht oder stelle eine getreue Erklärung dar, sind zusätzliche Prüfungen erforderlich, zum Beispiel Sensitivitätsanalysen oder geeignete Interventionen. Ein einzelnes Diagramm beantwortet diese Fragen nicht.

Prüfe schließlich, worauf sich Aussagen zu Rechenaufwand oder Effizienz beziehen. Kläre, ob von der standardmäßigen dichten Aufmerksamkeit, einer Variante oder einer optimierten Implementierung die Rede ist. Zur Vertiefung eignen sich im Glossar die Einträge zu Transformer, Token, Kontextfenster und Multimodalität sowie der Glossarüberblick. Diese Zusammenhänge helfen, den Mechanismus im Modell einzuordnen, ohne Komponenten, Eingabebegrenzungen und Verarbeitungsweisen miteinander zu verwechseln.

Kurze Checkliste

  1. 01Bestimme Q, K und V und prüfe, aus welcher Sequenz sie jeweils stammen.
  2. 02Prüfe die Maske und die Positionen, auf die zugegriffen werden darf.
  3. 03Trenne beobachtete Gewichte von Aussagen über Wichtigkeit oder Kausalität.
  4. 04Verlange zusätzliche Belege, wenn eine Karte als Erklärung einer Vorhersage dargestellt wird.
  5. 05Unterscheide die Komplexität der Operation von der Effizienz ihrer Implementierung.
10

Kurze Beispiele

11

Verwandte Begriffe

12

Verwendete Quellen