Ultralytics YOLO27: Trag dich in die Warteliste ein.
YOLO lizenzieren
Zurück zum Ultralytics-Glossar

Transformer

Ein Transformer ist ein neuronales Netzwerk auf Basis von Self-Attention, das eine ganze Sequenz parallel verarbeitet. Erfahre, wie Transformer funktionieren, welche Varianten es gibt und wie sie in der Bildverarbeitung eingesetzt werden.

Ein Transformer ist eine Architektur für neuronale Netze, die Sequenzen aus Token verarbeitet, etwa Wörter oder Bildausschnitte. Dabei kann jedes Token über Self-Attention Informationen von jedem anderen Token beziehen. Google-Forscher stellten die Architektur 2017 in Attention Is All You Need für die maschinelle Übersetzung vor. Frühere rekurrente neuronale Netze (RNNs) verarbeiteten Sätze Wort für Wort, sodass das Training nicht parallel über die Positionen hinweg ausgeführt werden konnte. Der Transformer verarbeitet alle Positionen gleichzeitig. Sein Basismodell erreichte nach zwölf Stunden Training auf acht GPUs eine Spitzenleistung bei der Übersetzung vom Englischen ins Deutsche. Transformer bilden heute die Grundlage für große Sprachmodelle (LLMs), Vision Transformer, Spracherkennung sowie viele Modelle zur Objekterkennung und Bildgenerierung.

So funktionieren Transformer#

Eingabe-Token werden zunächst in Einbettungen umgewandelt, also Vektoren fester Breite (512 im ursprünglichen Modell). Anschließend wendet ein Transformer mehrere identische Schichten an, die jeweils aus zwei Unterschichten bestehen:

  • Multi-Head-Self-Attention: Jedes Token erzeugt einen Query-, einen Key- und einen Value-Vektor. Die Ausgabe eines Tokens ist ein gewichteter Durchschnitt aller Value-Vektoren. Die Gewichtung hängt davon ab, wie gut sein Query zu jedem Key passt, wie im Attention-Mechanismus beschrieben. Mehrere Köpfe arbeiten parallel – im ursprünglichen Modell waren es acht –, sodass sie unterschiedliche Beziehungen erfassen können.
  • Feedforward-Netz: Ein zweischichtiges Netz, das separat auf jedes Token angewendet wird und die von der Attention gesammelten Informationen transformiert.

Eine Residualverbindung umschließt jede Unterschicht, und die Schichtnormalisierung stabilisiert die Aktivierungen. Das ursprüngliche Modell stapelte sechs solcher Schichten in einem Encoder, der den Ausgangssatz einliest, und sechs in einem Decoder, der die Übersetzung Token für Token erzeugt. Jede Decoderschicht ergänzt einen maskierten Self-Attention-Schritt, der zukünftige Token ausblendet, sowie einen Cross-Attention-Schritt, der die Ausgabe des Encoders einliest:

Attention vergleicht Token ausschließlich anhand ihres Inhalts. Daher hat eine Transfomerschicht kein eingebautes Verständnis für die Reihenfolge: Werden die Eingabe-Token vertauscht, werden lediglich die Ausgaben entsprechend umsortiert. Positionsinformationen werden deshalb zu den Token-Einbettungen hinzugefügt: durch feste Sinus- und Kosinusmuster im Originalartikel, gelernte Positionsvektoren in BERT und ViT oder durch rotierende Positionseinbettungen (RoPE) in den meisten aktuellen LLMs. Dieser PyTorch-Code veranschaulicht den Effekt mit einer Encoderschicht:

import torch
from torch import nn

# Eine Transformer-Encoderschicht und eine Sequenz aus 5 Token-Einbettungen
torch.manual_seed(0)
layer = nn.TransformerEncoderLayer(d_model=32, nhead=4, batch_first=True).eval()
tokens = torch.randn(1, 5, 32)
reverse = torch.arange(4, -1, -1)

# Self-Attention allein berücksichtigt die Reihenfolge nicht: Durch Umkehren der Eingabe wird nur die Ausgabe umgekehrt
print(torch.allclose(layer(tokens[:, reverse])[:, reverse], layer(tokens), atol=1e-5))

# Ein gelernter Vektor pro Position sorgt dafür, dass jede Ausgabe davon abhängt, an welcher Stelle sich ihr Token befindet
positions = nn.Embedding(5, 32).weight
reordered = layer(tokens[:, reverse] + positions)[:, reverse]
print(torch.allclose(reordered, layer(tokens + positions), atol=1e-5))

Es gibt True und anschließend False aus: Solange keine Positionsvektoren hinzugefügt werden, kehrt das Umkehren der Token lediglich die Ausgaben um. Danach verändert die Reihenfolge der Token die Ausgabe jedes Tokens.

Encoder-, Decoder- und Encoder-Decoder-Modelle#

Die drei Arten, den ursprünglichen Aufbau zu nutzen, dienen unterschiedlichen Zwecken:

  • Nur Encoder: Jedes Token berücksichtigt die gesamte Eingabe in beide Richtungen. Das eignet sich für Aufgaben zum Sprachverständnis. BERT für Text und ViT für Bilder verwenden nur einen Encoder.
  • Nur Decoder: Jedes Token berücksichtigt nur die vorhergehenden Token, sodass das Modell Text Token für Token erzeugt. GPT-Modelle und die meisten aktuellen LLMs verwenden diesen Aufbau.
  • Encoder-Decoder: Ein Encoder liest eine Sequenz ein, und ein Decoder erzeugt eine andere, während er die erste berücksichtigt – wie bei Übersetzungsmodellen, T5 und dem Spracherkennungssystem Whisper.

Transformer in der Bildverarbeitung#

Der Vision Transformer (ViT) behandelt ein Bild als Sequenz aus Bildausschnitten von 16×16 Pixeln und verwendet einen unveränderten Transformer-Encoder. Der Swin Transformer beschränkt die Attention auf lokale Fenster, damit sich hochauflösende Bilder verarbeiten lassen. DETR formulierte die Objekterkennung als Mengenvorhersage neu: Ein Transformer-Decoder wandelt eine feste Menge gelernter Objektabfragen in Boxen um, wobei jede Abfrage einem Objekt entspricht. Dadurch entfallen Non-Maximum-Suppression (NMS) und von Hand entworfene Anker. Das Ultralytics-Paket führt Baidus RT-DETR aus, eine Echtzeitvariante dieses Aufbaus. Deren hybrider Encoder wendet eine Transformer-Encoderschicht nur auf die Merkmalskarte mit Stride 32 an – das sind 400 Token bei einem Bild mit 640×640 Pixeln. Der sechsschichtige Decoder verfeinert 300 Objektabfragen zu endgültigen Erkennungen, ohne NMS zu verwenden. Transformer generieren auch Bilder: Diffusion-Transformer haben das U-Net in neueren Text-zu-Bild- und Videomodellen ersetzt. Vision-Language-Modelle speisen Bild-Token in ein LLM ein, das nur einen Decoder verwendet.

  • Faltungsneuronale Netze (CNNs): Eine Faltung betrachtet eine kleine Nachbarschaft und verwendet an jeder Position denselben Filter – eine eingebaute Annahme, die bei kleinen Datensätzen hilft. Attention kann innerhalb einer Schicht beliebige Positionen miteinander verknüpfen, muss räumliche Strukturen jedoch aus Daten lernen. Daher benötigen Transformer meist mehr Trainingsdaten oder ein Vortraining, um CNNs zu übertreffen.
  • RNNs und LSTMs: Sie führen einen Zustand fester Größe von Schritt zu Schritt fort. Der Speicherbedarf pro Token bleibt daher konstant, das Training erfolgt jedoch sequenziell. Ein Transformer behält jedes vorherige Token verfügbar und trainiert parallel.
  • Zustandsraummodelle: Architekturen wie Mamba verarbeiten Sequenzen mit einem rekurrenten Zustand, dessen Aufwand linear mit der Sequenzlänge wächst. Hybride Modelle kombinieren sie abwechselnd mit Attention-Schichten.

Self-Attention vergleicht jedes Token mit jedem anderen Token, daher wächst ihr Aufwand quadratisch mit der Sequenzlänge. Bei einer Sequenz aus 4.096 Token gibt es in jedem Kopf jeder Schicht etwa 16,8 Millionen Query-Key-Paare. Verdoppelt sich die Länge auf 8.192 Token, vervierfacht sich die Zahl auf etwa 67 Millionen. FlashAttention reduziert den Speicherverkehr bei dieser Berechnung. Der KV-Cache speichert Keys und Values früherer Token, damit der Decoder sie während der Generierung nur einmal berechnen muss.

Lösungen entdecken

Computer Vision im Sport

Computer Vision im Sport

Entdecke, wie Ultralytics YOLO die Sportbildanalyse voranbringt – mit Spieler- und Ballverfolgung, Leistungsanalysen, Erkenntnissen für das Coaching und der Rehabilitation von Athleten.
Mehr erfahren
Computer Vision für Luftbilder

Computer Vision für Luftbilder

Verwandle Drohnen- und Luftbilder mit Ultralytics YOLO in Echtzeit-Erkenntnisse für Landwirtschaft, Aquakultur, Naturschutz und Geodatenanalyse.
Mehr erfahren
Computer Vision in der Luft- und Raumfahrt

Computer Vision in der Luft- und Raumfahrt

Setze Computer Vision in der Luft- und Raumfahrt mit Ultralytics YOLO ein – für Flugzeuginspektionen, die Erkennung von Fremdkörpern auf Start- und Landebahnen, den Bodenbetrieb am Flughafen und die Erkennung von Verbundwerkstofffehlern.
Mehr erfahren
Computer Vision im Sicherheitsbereich

Computer Vision im Sicherheitsbereich

Schütze jeden Standort mit Ultralytics YOLO-Modellen. Vision-KI ermöglicht die Überwachung von Grundstücksgrenzen, die Erkennung von Bedrohungen, die Kennzeichenerkennung und die Sicherheit am Arbeitsplatz.
Mehr erfahren
Computer Vision in der Robotik

Computer Vision in der Robotik

Mach Maschinen mit Ultralytics YOLO-Modellen leistungsfähiger. Vision-KI in der Robotik ermöglicht autonome Navigation, Wahrnehmung, Objektverfolgung und Steuerung in Echtzeit.
Mehr erfahren
Bildverarbeitung in der Logistik

Bildverarbeitung in der Logistik

Optimiere die Logistik mit Ultralytics YOLO-Modellen. Vision AI ermöglicht die Paketprüfung, Sortierung und Fahrzeugverfolgung sowie die Sicherheitsüberwachung von Lagerhäusern in Echtzeit.
Mehr erfahren
Bildverarbeitung im Einzelhandel

Bildverarbeitung im Einzelhandel

Gestalte den Einzelhandel mit Ultralytics YOLO-Modellen neu. Vision AI ermöglicht Bestandsverfolgung, Regalüberwachung und Warteschlangenmanagement und liefert bessere Einblicke in das Kundenverhalten.
Mehr erfahren
Bildverarbeitung im Gesundheitswesen

Bildverarbeitung im Gesundheitswesen

Entwickle Lösungen für das Gesundheitswesen mit Ultralytics YOLO-Modellen. Vision AI ermöglicht im Gesundheitswesen schnellere medizinische Bildgebung, bessere Diagnostik und die Überwachung von Patienten.
Mehr erfahren
Computer Vision in der Fertigung

Computer Vision in der Fertigung

Optimiere die Fertigung mit Ultralytics-YOLO-Modellen. Vision AI ermöglicht Qualitätskontrolle, Fehlererkennung, die Überprüfung der Einhaltung von Vorgaben zu persönlicher Schutzausrüstung und die Automatisierung von Montagelinien.
Mehr erfahren
Computer Vision in der Automobilbranche

Computer Vision in der Automobilbranche

Setze Computer Vision in der Automobilbranche mit Ultralytics-YOLO-Modellen ein. Vision AI verbessert die Verkehrssicherheit, Fahrerassistenz und Fahrzeugautomatisierung – für intelligentere Straßen.
Mehr erfahren
Computer Vision in der Landwirtschaft

Computer Vision in der Landwirtschaft

Setze mit Ultralytics YOLO-Modellen KI für Bildverarbeitung in der intelligenten Landwirtschaft ein. Ermögliche die Überwachung von Nutzpflanzen, die Verfolgung von Nutztieren und Präzisionslandwirtschaft für höhere und nachhaltigere Erträge.
Mehr erfahren

Lass uns gemeinsam die Zukunft der KI gestalten!

Starte deine Reise in die Zukunft des maschinellen Lernens