Der Begriff Visual Transformer oder auch Vision Transformer stammt aus dem Gebiet der Bildverarbeitung. Das Modell kommt dabei insbesondere bei der Bilderkennung im Kontext des Machine Learnings zum Einsatz.
Der Wissenschaftsbereich, der sich mit den Vision Transformers beschäftigt, ist die Computer Vision. In diesem geht es um eine spezielle Analyse und Verarbeitung von Bildern und Fotos. Die Bilder werden so verarbeitet und analysiert, dass die dabei gewonnenen Informationen von einem Computer erkannt und verstanden werden können.
Dies stellt wiederum die Grundlage dafür dar, die Bilder und Fotos im nächsten Schritt weiterzuverarbeiten.
Die Geschichte der Visual Transformers
Bekannt wurde das besondere Verfahren zur Bilderkennung im Jahr 2020 durch ein entsprechendes Whitepaper. Allerdings wurden die Transformer auch schon davor eingesetzt, jedoch vorrangig in dem Bereich der NLP, der Natural Language Processing − also für die Text- und Spracherkennung in neuronalen Netzen. Seitdem das besagte Whitepaper erschienen ist, wurde die Idee jedoch auch für andere Bereiche adaptiert, unter anderem für die Verarbeitung und Erkennung von Bildern.
Implementiert sind die Visual Transformers heute bereits in bestimmten Programmbibliotheken. Dies sind Open-Source-Bibliotheken, die im Bereich des Deep Learning und des maschinellen Lernens eingesetzt werden. Konkret werden sie dafür genutzt, die Programmiersprachen C++ und Python zu implementieren.
Der Aufbau der Vision Transformers
Visual Transformers nutzen denselben Algorithmus beziehungsweise dasselbe Rechenmodell, das auch viele Textverarbeitungs- und Texterkennungsprogramme verwenden, zum Beispiel Googles BERT.
Die sogenannte Attention stellt den Kern des Transformers dar. Bei dieser handelt es sich um die Beziehung, welche ein Teil der jeweiligen Größe, etwa ein Pixel oder ein Wort, zu den restlichen Teilen der Eingangsgröße aufweist.
Die Eingangsgrößen werden anschließend genutzt, um sie weiter zu verarbeiten. Diese werden auch als Token bezeichnet. Ein Token besteht in dem Bereich der Texterkennung, etwa in einer Silbe oder einem ganzen Wort. Bezogen auf die Bilderkennung stellt ein einzelnes Pixel das entsprechende Äquivalent dar.
Bilder bestehen jedoch aus vielen Pixeln. Würde der Algorithmus auf alle einzeln angewendet, würde dies im Sinne der Dauer beziehungsweise der Speicherkapazität kaum sinnvoll sein. Aus diesem Grund wird eine Unterteilung des Bildes in mehrere kleinere Patches beziehungsweise Bereiche vorgenommen.
Danach folgt das Flattening. Bei diesem werden die Abschnitte vektorisiert. Mit Hilfe einer linearen Transformation findet die Umwandlung in Linear Embeddings statt. Anschließend wird den Patches noch ein lernbares Positionierungs-Embedding verliehen. Dies ermöglicht dem Rechenmodell, die Bildstruktur zu erfassen und zu verstehen.
Im nächsten Schritt kommt ein Transformer Encoder zum Einsatz, um die Informationen zu verarbeiten. Es findet eine Klassifizierung der Daten durch Attention-Layer und Multi-Layer-Perceptron anhand von ViT-Modellen beziehungsweise der vorhandenen Trainingsdaten statt. Der Abschluss besteht darin, dass durch einen MLP-Head die finale Klassifizierung erfolgt.
Anders als andere Transformer verzichten Vision Transformer auf den Decoder. Diejenigen, die mehr über diese Technologie erfahren möchten, sollten einen Blick in die Visual Transformers Einführung werfen.
Worin unterscheiden sich Vision Transformer von einem Convolutional Neural Network?
Im Bereich der Computer Vision wird bereits seit einiger Zeit auf die Convolutional Neural Networks zurückgegriffen. Der deutsche Begriff für diese lautet faltendes neuronales Netzwerk. Mit der Faltung ist ein mathematischer Operator gemeint, der genutzt wird, um den Algorithmus durchzuführen.
Ein Vision Transformer und ein Convolutional Neural Network unterscheiden sich hauptsächlich in ihrer Architektur. In der Regel bestehen die CNNs aus mehreren Schichten. Diese werden nach ihren einzelnen Sequenzen bearbeitet. Dagegen läuft die Arbeit bei einem Vision Transformer zum Großteil parallel ab.
Fotos: KI generiert von ChatGPT4 / Dall-E-3