22 Self-Attention und die Bedeutung für maschinelles Lernen

22.1 Einführung

Self-Attention ist ein Mechanismus, der es neuronalen Netzen ermöglicht, Beziehungen zwischen verschiedenen Elementen einer Sequenz zu erlernen, unabhängig von deren Position. Dieser Ansatz ist ein zentraler Bestandteil moderner Transformer-Modelle und hat das maschinelle Lernen revolutioniert, insbesondere in den Bereichen natürliche Sprachverarbeitung (NLP) und Computer Vision (CV).


22.2 Was ist Self-Attention?

Self-Attention ist eine Technik, mit der ein Modell bestimmen kann, welche Teile einer Eingabesequenz für die Verarbeitung besonders relevant sind. Jedes Token (Wort, Pixel, Merkmal) einer Sequenz betrachtet dabei alle anderen Tokens und gewichtet deren Bedeutung dynamisch.

22.2.1 Beispiel: Self-Attention in einem Satz

Betrachten wir den Satz:

„Die Katze sprang über die Mauer, weil sie hoch war.“

Das Wort „sie“ kann sich sowohl auf „Katze“ als auch auf „Mauer“ beziehen. Ein Self-Attention-Modell lernt, dass „sie“ mit höherer Wahrscheinlichkeit „Mauer“ meint, da das Adjektiv „hoch“ eher zu „Mauer“ passt.


22.3 Mathematische Darstellung von Self-Attention

Self-Attention basiert auf den drei Hauptkomponenten:

  1. Query (Q) – Die aktuelle Position, die nach relevanten Informationen sucht.
  2. Key (K) – Die anderen Elemente, mit denen die aktuelle Position interagiert.
  3. Value (V) – Die eigentliche Information, die weitergegeben wird.

Der Self-Attention-Wert wird über die folgende Formel berechnet:

Attention(Q, K, V) = softmax((QKᵀ) / √dₖ) ⋅ V

22.3.1 Erklärung:

📌 Ergebnis: Das Modell erkennt, welche Wörter besonders wichtig für die Bedeutung eines anderen Wortes sind.


22.4 Multi-Head Self-Attention

Anstatt nur eine einzige Self-Attention-Berechnung durchzuführen, verwendet der Transformer mehrere Attention-Köpfe, um unterschiedliche Arten von Beziehungen zu erfassen.

MultiHead(Q, K, V) = Concat(head₁, …, headₕ) Wᴼ

📌 Vorteil: Mehrere Interpretationen der Daten gleichzeitig, was eine bessere Generalisierung ermöglicht.


22.5 Bedeutung von Self-Attention für maschinelles Lernen

22.5.1 Effizienz und Parallelisierung

22.5.2 Langfristige Abhängigkeiten

22.5.3 Flexibilität in verschiedenen Anwendungsbereichen


22.6 Anwendungen von Self-Attention

📌 Maschinelle Übersetzung (z. B. Google Translate) → Kontextabhängige Übersetzungen verbessern.
📌 Textgenerierung (GPT-Modelle) → Realistische und zusammenhängende Texte.
📌 Bilderkennung (Vision Transformer) → Objekterkennung mit globalem Kontext.
📌 Spracherkennung (Whisper, DeepSpeech) → Erkennung von Sprachmustern in Audiosequenzen.