Zurück zum Archiv
#ai#llm#glossary#aigen

Transformer

Du möchtest den Satz „Der Zug kommt morgen an“ übersetzen. Jedes Wort einzeln zu übersetzen genügt nicht: Die richtige Form hängt von anderen Wörtern und ihrer Reihenfolge ab. Das Modell braucht eine Methode zum Verbinden von Informationen aus dem Text, auch wenn wichtige Fragmente weit auseinanderliegen.

Ein Transformer ist eine Bauweise für ein neuronales Netz, also ein Programm, das Berechnungen anhand von Beispielen lernt. Es erhält Text, der zuvor in Tokens — Textstücke — aufgeteilt wurde, und bildet ihre Beschreibungen als Zahlenlisten. Die Aufteilung erledigt ein eigenes Programm, der Tokenizer. In aufeinanderfolgenden Blöcken mischt es Informationen aus verfügbaren Positionen und verändert die Beschreibung jeder Position. Der Mechanismus zur Verbindung des Kontexts heißt Self-attention.

In unserem Satz kann die Beschreibung von „kommt“ „Zug“ und „morgen“ berücksichtigen. Das ist keine manuelle Regel zum Verständnis von Grammatik: Die Art des Mischens ergibt sich aus dem Lernen. Informationen über die Reihenfolge liefert ein eigener Mechanismus, etwa Positional Encoding.

Diese Berechnungen können beim Training zu einem großen Teil parallel ausgeführt werden. Das bedeutet nicht, dass eine neue Antwort vollständig auf einmal entsteht: Viele Modelle ergänzen sie weiterhin Stück für Stück. Transformer beschreibt die Konstruktion eines Modells, keine Garantie für Wahrheit oder Textverständnis.

Mechanismus und Details

Am Eingang werden Token-IDs in Vektoren umgewandelt. Positionskodierung liefert Informationen über ihre Reihenfolge. Im Block verbindet Multi-Head Attention Informationen aus verfügbaren Positionen, und das Feed-Forward-Netz transformiert das Ergebnis separat für jede Position. Residualverbindungen und Normalisierung helfen, das Signal durch die folgenden Blöcke zu übertragen. Diese Bestandteile zeigt die TensorFlow-Implementierung.

Encoder und Decoder

Das ursprüngliche Modell aus Vaswani et al., Attention Is All You Need, §3 hatte einen Encoder und einen Decoder. Der Encoder erzeugte eine Repräsentation des Eingabesatzes, die der Decoder beim Generieren der Übersetzung nutzte.

Beispielsweise bestimmt der Decoder beim Übersetzen von „Der Zug kommt morgen“ die Wahrscheinlichkeitsverteilung des nächsten Tokens anhand der Eingabe und des bereits verfügbaren Antwortteils. Berechnungen für viele Positionen können während des Trainings parallel erfolgen; die Generierung einer neuen Antwort kann weiterhin Token für Token ablaufen.

Die Bezeichnung Transformer legt weder eine Modellgröße noch ein Trainingsziel fest. Es gibt Encoder-only- und Decoder-only-Varianten. Einzelheiten des ursprünglichen Aufbaus dürfen daher nicht jedem LLM zugeschrieben werden. TensorFlow bespricht diese Varianten am Ende des Leitfadens.