Entdecken Sie die Leistungsfähigkeit von Vision Transformers (ViT). Erfahren Sie, wie Selbstaufmerksamkeit und Patch-Tokenisierung mit Ultralytics die Computer Vision über CNNs hinaus revolutionieren.
Ein Vision Transformer (ViT) ist eine Deep-Learning-Architektur, die die ursprünglich für die natürliche Sprachverarbeitung (Natural Language Processing, NLP) entwickelten Selbstaufmerksamkeitsmechanismen zur Lösung visueller Aufgaben anpasst. Im Gegensatz zu einem herkömmlichen Convolutional Neural Network (CNN), das Bilder über eine Hierarchie lokaler Pixelgitter verarbeitet, behandelt ein ViT ein Bild als eine Folge diskreter Patches. Dieser Ansatz wurde durch die bahnbrechende Forschungsarbeit „An Image is Worth 16x16 Words” populär gemacht, die zeigte, dass reine Transformer-Architekturen ohne Rückgriff auf Faltungsschichten eine hochmoderne Leistung im Bereich Computer Vision (CV) erzielen können. Durch die Nutzung globaler Aufmerksamkeit können ViTs bereits ab der ersten Schicht weitreichende Abhängigkeiten über ein gesamtes Bild hinweg erfassen .
Die grundlegende Innovation des ViT besteht in der Art und Weise, wie es Eingabedaten strukturiert. Um ein Bild mit einem Standard-Transformer kompatibel zu machen , zerlegt das Modell die visuellen Informationen in eine Folge von Vektoren und ahmt damit die Art und Weise nach, wie ein Sprachmodell einen Satz aus Wörtern verarbeitet.
Obwohl beide Architekturen darauf abzielen, visuelle Daten zu verstehen, unterscheiden sie sich erheblich in ihrer Funktionsweise. CNNs besitzen eine starke „induktive Tendenz”, die als Translationsinvarianz bekannt ist, was bedeutet, dass sie von Natur aus davon ausgehen, dass lokale Merkmale (wie Kanten und Texturen) unabhängig von ihrer Position wichtig sind. Dadurch sind CNNs sehr dateneffizient und effektiv bei kleineren Datensätzen.
Umgekehrt weisen Vision Transformers weniger bildspezifische Verzerrungen auf. Sie müssen räumliche Beziehungen von Grund auf neu lernen und dabei riesige Mengen an Trainingsdaten verwenden, wie beispielsweise das JFT-300M oder das vollständige ImageNet Datensätze. Dadurch wird das Training zwar rechenintensiver, aber ViTs lassen sich dadurch bemerkenswert gut skalieren; mit ausreichenden Daten und Rechenleistung können sie CNNs übertreffen, indem sie komplexe globale Strukturen erfassen, die lokale Faltungen möglicherweise übersehen.
Die Fähigkeit, globale Zusammenhänge zu verstehen, macht ViTs besonders nützlich für komplexe Umgebungen mit hohem Risiko.
Die ultralytics Die Bibliothek unterstützt Transformer-basierte Architekturen, insbesondere die
RT-DETR Echtzeit-Erkennungstransformator)Während das
Flaggschiff YOLO26 wird oft wegen seiner Ausgewogenheit zwischen Geschwindigkeit
und Genauigkeit auf Edge-Geräten bevorzugt, RT-DETR eine leistungsstarke Alternative für Szenarien, in denen der globale Kontext im Vordergrund steht.
Das Folgende Python -Beispiel zeigt, wie ein vortrainiertes Transformer-basiertes Modell geladen und eine Inferenz durchgeführt wird:
from ultralytics import RTDETR
# Load a pre-trained RT-DETR model (Vision Transformer-based)
model = RTDETR("rtdetr-l.pt")
# Run inference on an image source
# The model uses self-attention to detect objects globally
results = model("https://ultralytics.com/images/bus.jpg")
# Display the detection results
results[0].show()
Die Forschung entwickelt sich rasant weiter, um die hohen Rechenkosten von ViTs zu bewältigen. Techniken wie FlashAttention machen diese Modelle schneller und speichereffizienter. Darüber hinaus werden hybride Architekturen, die die Effizienz von CNNs mit der Aufmerksamkeit von Transformern kombinieren, immer häufiger eingesetzt. Für Teams, die diese fortschrittlichen Workflows verwalten möchten, bietet Ultralytics eine einheitliche Umgebung, um Daten zu annotieren, komplexe Modelle über die Cloud zu trainieren und sie auf verschiedenen Endpunkten bereitzustellen.