Zum Inhalt springen

Self-Attention

Self-Attention bezeichnet Attention innerhalb einer Sequenz. Jedes Token gewichtet alle anderen. Query-Key-Value, Multi-Head, Rolle in Transformern und LLMs.

Self-Attention ist ein Rechenschritt in modernen KI-Sprachmodellen, bei dem jedes Wort (genauer: jeder Token, also die kleinste Verarbeitungseinheit) eines Satzes darauf schaut, wie stark es sich auf jedes andere Wort desselben Satzes bezieht. Aus jedem Token werden dazu drei Hilfsvektoren erzeugt: eine Query (Suchanfrage), ein Key (Etikett) und ein Value (Inhalt). Alle drei stammen aus derselben Eingabe (daher „Self", also „selbst"). Eingeführt wurde der Mechanismus 2017 im Paper „Attention Is All You Need" (Vaswani et al.) als Kern der Transformer-Architektur, auf der heutige Large Language Models (große Sprachmodelle, kurz LLM) wie BERT, GPT, Llama und Claude aufbauen.

Was ist Self-Attention?

Self-Attention ist die Spielart des Attention-Mechanismus (deutsch: Aufmerksamkeitsmechanismus), in der eine Textsequenz auf sich selbst schaut. Jedes Token, also jedes Wortstück, das das Modell verarbeitet, wird zunächst über gelernte Rechenschritte in drei Repräsentationen (Zahlenvektoren) überführt: eine Query (was suche ich?), einen Key (womit lasse ich mich finden?) und einen Value (welchen Inhalt trage ich bei?). Alle drei stammen aus derselben Eingabesequenz, was den Namensbestandteil „Self" (englisch für „selbst") begründet. Das Ergebnis für ein Token ist eine gewichtete Mischung aus den Values aller Tokens; die Gewichte entstehen aus dem Vergleich der Query dieses Tokens mit den Keys aller anderen Tokens.

Formal folgt Self-Attention der [in Vaswani et al. 2017](https://arxiv.org/abs/1706.03762) eingeführten Scaled-Dot-Product-Form: die Attention-Matrix entsteht als softmax(Q · K^T / √d) · V. Das Skalarprodukt aus Query- und Key-Matrix misst die Ähnlichkeit zwischen Token-Paaren, die Skalierung durch die Wurzel der Key-Dimension d verhindert extreme Softmax-Werte, und die Softmax-Normierung erzeugt eine Verteilung, die auf die Values angewendet wird. Jedes Token bekommt so eine Repräsentation, die den Rest der Sequenz gewichtet enthält.

Der Begriff existiert, weil frühere Sequenzmodelle wie RNN und LSTM zwei strukturelle Grenzen hatten: sie verarbeiten Sequenzen streng sequenziell (kein Parallelismus auf GPU) und ihre Information verblasst über die Schrittkette (Vanishing Gradients bei langen Abhängigkeiten). Self-Attention löst beide Probleme in einem Schritt. Die Pfadlänge zwischen zwei beliebigen Positionen ist konstant, und alle Positionen können parallel berechnet werden. Genau diese Eigenschaft machte das Skalieren auf Milliarden Parameter möglich.

In produktiven Transformer-Modellen läuft Self-Attention als Multi-Head Self-Attention: mehrere parallele Attention-Berechnungen mit jeweils eigenen gelernten Q-, K-, V-Projektionen. Ein Llama-3-70B-Modell verwendet 64 Heads pro Schicht bei 80 Schichten. Jeder Head lernt einen anderen Beziehungstyp: syntaktische Nachbarschaft, Koreferenz, semantische Nähe. Die Zerlegung ist emergent und wird nicht explizit vorgegeben. Nach der Attention-Berechnung werden die Head-Ausgaben konkateniert und linear projiziert.

Zwei Masking-Varianten prägen den produktiven Einsatz. Encoder-Self-Attention (BERT-Familie) ist bidirektional: jedes Token sieht alle Tokens der Sequenz. Decoder-Self-Attention (GPT-, Llama-, Claude-Familie) trägt eine kausale Maske und lässt ein Token nur auf vorangehende Tokens schauen. Diese Maske macht autoregressive Textgenerierung Token für Token erst möglich, ohne dass zukünftige Positionen ins Ergebnis leaken.

Das Rechenprofil von Self-Attention ist quadratisch in der Sequenzlänge: für eine Sequenz mit n Tokens werden n · n Attention-Gewichte berechnet und im Speicher gehalten. Diese Komplexität ist der Grund für die harte Grenze des Kontextfensters heutiger LLMs und für Effizienz-Varianten wie [FlashAttention](https://arxiv.org/abs/2205.14135) (Dao et al. 2022), Sparse-Attention, Sliding-Window-Attention und Grouped-Query Attention.

Abgrenzung zu Cross-Attention, Multi-Head, RNN und Convolution

Der Begriff Self-Attention wird häufig mit Nachbar-Begriffen vermischt. Die relevanten Trennlinien:

VarianteMerkmalVerhältnis zu Self-Attention
Cross-AttentionQuery aus Sequenz A, Key/Value aus Sequenz BZwei verschiedene Sequenzen; kein „Self"
Attention Mechanism (Dach-Term)Beliebige gewichtete Kombination von Values über Attention-GewichteSelf-Attention ist ein Spezialfall
Multi-Head AttentionParallele Attention-Berechnungen mit eigenen ProjektionenArchitektonische Verpackung, kann Self- oder Cross-Attention sein
RNN / LSTMSequenzieller versteckter Zustand ohne direkten Zugriff auf entfernte PositionenVorgänger-Klasse; wurde durch Self-Attention abgelöst
ConvolutionLokales Fenster mit fester Rezeptivfeld-GrößeLinear in n, aber pro Schicht nur lokaler Ausschnitt

Cross-Attention ist die zweite Attention-Variante innerhalb der Transformer-Architektur. Die Query stammt aus einer Sequenz A (zum Beispiel den Decoder-Tokens), Key und Value stammen aus einer anderen Sequenz B (zum Beispiel den Encoder-Ausgaben). Verwendung finden Cross-Attention-Blöcke im Encoder-Decoder-Transformer für maschinelle Übersetzung, in multimodalen Modellen zwischen Bild-Patches und Text-Tokens, und in Retrieval-Augmented-Generation-Setups zwischen abgerufenen Dokumenten und Nutzeranfragen. Ohne diese Trennung wäre der Übergang zwischen Modalitäten oder Sequenzen nicht formalisiert.

Der Attention Mechanism ist der Dach-Term. Er umfasst neben Self-Attention auch Cross-Attention sowie ältere Varianten wie Additive Attention (Bahdanau et al. 2014). Self-Attention und Attention Mechanism werden oft synonym benutzt, sind aber nicht deckungsgleich: jede Self-Attention ist Attention, aber nicht jede Attention ist Self-Attention.

Multi-Head Attention ist eine architektonische Verpackung, keine eigene Attention-Art. Sie wickelt mehrere parallele Attention-Berechnungen in einen Block. Über Multi-Head lassen sich sowohl Self-Attention als auch Cross-Attention ausführen. Der Kernblock jedes Transformer-Encoders ist Multi-Head Self-Attention, der Kernblock des Transformer-Decoders enthält Multi-Head Self-Attention (kausal maskiert) und Multi-Head Cross-Attention nebeneinander.

RNN und LSTM waren die dominierende Klasse vor 2017. Sie verarbeiten Tokens sequenziell und pflegen einen versteckten Zustand. Der Zugriff auf entfernte Positionen läuft durch die gesamte Schrittkette, was zu Vanishing Gradients und zu einem sequenziellen Trainings-Flaschenhals führt. Self-Attention hat diese Klasse in Sprach- und Sequenzaufgaben weitgehend abgelöst. RNN-Varianten bleiben in Nischen relevant (kleine Modelle, streaming Zeitreihen).

Convolution ist ein weiterer Kontrast. Convolutional Layers arbeiten mit lokalen Fenstern fester Größe und wachsen linear in der Sequenzlänge. Sie sehen pro Schicht nur einen Ausschnitt, decken größere Distanzen aber durch Stapelung ab. Self-Attention hat pro Schicht ein globales Rezeptivfeld, zahlt aber mit quadratischer Komplexität. Diese Trade-offs führen zu Hybrid-Architekturen wie Conformer oder Perceiver, in denen Convolution und Self-Attention kombiniert werden.

Beispiel: Multi-Head Self-Attention in einem Transformer-Decoder

Ein produktiver Fall zeigt Self-Attention am klarsten. In einem autoregressiven Sprachmodell wie Llama 3 wird jedes Token pro Schicht durch einen Multi-Head-Self-Attention-Block geführt. Für den Satz „Das Modell wurde geladen, weil es klein war" berechnet jede Schicht die Attention-Gewichte des Tokens „es" gegen alle vorangehenden Tokens. Ein Head im Kopf-Ensemble weist „Modell" ein hohes Attention-Gewicht zu, ein anderer Head verstärkt die Verbindung zu „geladen", ein dritter zu „klein". Die resultierende Value-Kombination fließt zurück in die Repräsentation von „es" und ersetzt die vorherige Vektor-Darstellung dieses Tokens.

Dieser Vorgang wiederholt sich Schicht für Schicht. Nach 80 Schichten liegt eine kontextangereicherte Vektorfolge vor, aus der über eine finale lineare Projektion die Wahrscheinlichkeitsverteilung für das nächste Token entsteht. Der Trainings-Loss ist Next-Token-Prediction, die kausale Maske stellt sicher, dass ein Token nur auf vorangehende Tokens zugreift, und die Multi-Head-Zerlegung erlaubt es dem Modell, mehrere Beziehungstypen gleichzeitig zu tracken.

Ein zweiter typischer Einsatz ist der Encoder-Block von BERT und verwandten Modellen. Die Attention ist hier bidirektional und läuft ohne Maske: jedes Token sieht die gesamte Sequenz auf einmal. Diese Architektur eignet sich für Klassifikations- und Extraktionsaufgaben (Named Entity Recognition, Sentiment-Klassifikation, Textklassifikation), bei denen die vollständige Sequenz bereits vorliegt und die Reihenfolge der Ausgabe irrelevant ist. In multimodalen Systemen (etwa Vision-Language-Modellen) rechnet der Vision-Encoder Self-Attention über Bild-Patches, während der Text-Decoder Self-Attention über die generierten Tokens ausführt; Cross-Attention verbindet die beiden Repräsentations-Räume und lässt den Text-Decoder gezielt auf einzelne Bildregionen fokussieren.

Self-Attention im eigenen Unternehmen umsetzen?

Wir zeigen, wie sich das in deiner Systemlandschaft konkret abbilden lässt.

Gespräch vereinbaren