Yolo Vision Shenzhen
Shenzhen
Jetzt beitreten
Glossar

Vision Transformer (ViT)

Entdecken Sie die Leistungsfähigkeit von Vision Transformers (ViTs) in der Computer Vision. Erfahren Sie, wie sie CNNs übertreffen, indem sie den globalen Bildkontext erfassen.

Ein Vision Transformer (ViT) ist eine Art neuronales Netzwerk, das das sehr erfolgreiche Transformer-Modell, das ursprünglich für die natürliche Sprachverarbeitung (NLP) entwickelt wurde, auf Computer Vision (CV)-Aufgaben anwendet. ViTs, die von Google-Forschern in dem Paper "An Image is Worth 16x16 Words" vorgestellt wurden, stellen eine deutliche Abkehr von den dominanten Convolutional Neural Network (CNN)-Architekturen dar. Anstatt Bilder mit gleitenden Filtern zu verarbeiten, behandelt ein ViT ein Bild als eine Sequenz von Patches, wodurch er globale Beziehungen zwischen verschiedenen Teilen eines Bildes mithilfe des Self-Attention-Mechanismus erfassen kann.

Wie Vision Transformer funktionieren

Die Grundidee hinter einem ViT ist die Verarbeitung eines Bildes auf eine Weise, die nachahmt, wie Transformer Text verarbeiten. Der Prozess umfasst einige wichtige Schritte:

  1. Image Patching: Das Eingangsbild wird zunächst in ein Raster aus gleich großen, nicht überlappenden Patches aufgeteilt. Beispielsweise könnte ein 224x224-Pixel-Bild in 196 Patches von je 16x16 Pixeln unterteilt werden.
  2. Patch-Einbettung: Jeder Patch wird zu einem einzelnen Vektor vereinfacht. Diese Vektoren werden dann in einen niedrigdimensionalen Raum projiziert, um "Patch-Einbettungen" zu erstellen. Eine lernbare "Positionseinbettung" wird zu jeder Patch-Einbettung hinzugefügt, um räumliche Informationen zu erhalten.
  3. Transformer Encoder: Diese Sequenz von Einbettungen wird in einen Standard-Transformer-Encoder eingespeist. Durch seine Self-Attention-Schichten lernt das Modell die Beziehungen zwischen allen Paaren von Patches und kann so den globalen Kontext über das gesamte Bild von der ersten Schicht an erfassen.
  4. Klassifikations-Head: Für Aufgaben wie die Bildklassifizierung wird der Sequenz ein zusätzliches lernbares Embedding hinzugefügt (ähnlich dem [CLS]-Token in BERT). Die entsprechende Ausgabe des Transformers wird an eine abschließende Klassifizierungsschicht übergeben, um die Vorhersage zu erzeugen.

ViT vs. CNNs

Obwohl sowohl ViTs als auch CNNs grundlegende Architekturen im Bereich Computer Vision darstellen, unterscheiden sie sich erheblich in ihrem Ansatz:

  • Induktive Verzerrung: CNNs besitzen starke induktive Verzerrungen (Annahmen über die Daten) wie Lokalität und Translationsequivarianz durch ihre Faltungs- und Pooling-Schichten. ViTs haben viel schwächere induktive Verzerrungen, was sie flexibler macht, aber auch stärker davon abhängig macht, Muster direkt aus Daten zu lernen.
  • Datenabhängigkeit: Aufgrund ihrer schwächeren Vorannahmen benötigen ViTs im Allgemeinen massive Datensätze (z. B. ImageNet-21k) oder umfangreiches Pre-Training, um State-of-the-Art CNNs zu übertreffen. Bei kleineren Datensätzen generalisieren CNNs oft besser. Deshalb ist Transfer Learning für ViTs entscheidend.
  • Globaler vs. lokaler Kontext: CNNs bauen hierarchische Merkmale von lokalen zu globalen Mustern auf. Im Gegensatz dazu können ViTs globale Interaktionen zwischen Patches von den frühesten Schichten an modellieren, wodurch sie potenziell einen breiteren Kontext für bestimmte Aufgaben effektiver erfassen können.
  • Rechenaufwand: Das Training von ViTs kann rechenintensiv sein und erfordert oft erhebliche GPU-Ressourcen. Frameworks wie PyTorch und TensorFlow bieten Implementierungen für das Training dieser Modelle.

Anwendungen und hybride Modelle

ViTs haben eine außergewöhnliche Leistung in verschiedenen Anwendungen gezeigt, insbesondere dort, wo das Verständnis des globalen Kontextes von entscheidender Bedeutung ist.

  • Medizinische Bildanalyse: ViTs sind sehr effektiv bei der Analyse medizinischer Scans wie MRTs oder histopathologischer Bilder. Beispielsweise kann ein ViT bei der Tumorerkennung Beziehungen zwischen entfernten Geweben identifizieren und so Tumore genauer klassifizieren als Modelle, die sich nur auf lokale Texturen konzentrieren.
  • Autonomes Fahren: In selbstfahrenden Autos können ViTs komplexe Szenen zur Objekterkennung und -segmentierung analysieren. Durch die globale Verarbeitung der gesamten Szene können sie die Interaktionen zwischen Fahrzeugen, Fußgängern und Infrastruktur besser verstehen, wie in mehreren Automobil-KI-Studien detailliert beschrieben.

Der Erfolg von ViTs hat auch hybride Architekturen inspiriert. Modelle wie RT-DETR kombinieren ein CNN Backbone für die effiziente Feature-Extraktion mit einem Transformer-basierten Encoder-Decoder, um Objektbeziehungen zu modellieren. Dieser Ansatz zielt darauf ab, das Beste aus beiden Welten zu vereinen: die Effizienz von CNNs und das globale Kontextbewusstsein von Transformatoren.

Für viele Echtzeitanwendungen, insbesondere auf ressourcenbeschränkten Edge-Geräten, bieten hochoptimierte CNN-basierte Modelle wie die Ultralytics YOLO-Familie (z. B. YOLOv8 und YOLO11) oft ein besseres Gleichgewicht zwischen Geschwindigkeit und Genauigkeit. Einen detaillierten Vergleich zwischen RT-DETR und YOLO11 finden Sie hier, um die Kompromisse zu verstehen. Die Wahl zwischen einem ViT und einem CNN hängt letztendlich von der spezifischen Aufgabe, den verfügbaren Daten und dem Rechenbudget ab.

Treten Sie der Ultralytics-Community bei

Gestalten Sie die Zukunft der KI mit. Vernetzen Sie sich, arbeiten Sie zusammen und wachsen Sie mit globalen Innovatoren

Jetzt beitreten
Link in die Zwischenablage kopiert