Konstrukte
:Generalisierungen
:Involvierte Definitionen
:Veranstaltung
: Einführung in Maschinelles LernenReferenz
:
⠀
Definition: Vision Transformer (ViT)
Primär ein Stub, aber hier ist eine grobe Beschreibung:
In Vision Transformern teilen wir ein Input-Image zunächst in viele
Patches auf. Jeder Patch wird durch eine lineare Abbildung (i.e. 1-Layer-Perzeptron) in einen Vektor transformiert. Diese Vektoren entsprechen (konzeptionell) den Wort-Embeddings des Transformers und werden als Patch-Embeddings bezeichnet.
Ähnlich wie beim Transformer wird auf diese Patch Embeddings noch ein Position-Embedding aufaddiert, um dem Modell die Reihenfolge des Patches innerhalb des Bildes zu übermitteln.
Anschließend werden die Patch+Position-Embeddings ganz normal wie im Transformer verarbeitet.
Das Trainingsziel ist Klassifikation. Da es in einem Bild kein “Ziel-Embedding” gibt (in natürlicher Sprache könnte das bspw. das letzte Wort sein - in einem Bild ergibt “der letzte Patch” aber keinen Sinn).
Als “Ziel-Embedding” wird zusätzlich zu den Patches ein sog. class-Embedding zu der Reihe der Patch-Embeddings hinzugefügt. Dieses class-Embedding wird zu Anfang zufällig initialisiert und ist genau so Teil des Inputs wie die Patch+Position-Embeddings.
Nach Transformation durch die Multi-Head-Attention-Blöcke wird das letztlich resultierende class-Embedding an ein MLP weitergereicht, um ein Klassifikation vorherzusagen.