Segment Anything ViT ist eine Vision-Transformer-Architektur, die als Bildencoder-Backbone für das Segment Anything Model (SAM) dient, ein von Meta entwickeltes System zur promptbasierten Bildsegmentierung. Das Modell verwendet ein auf Transformatoren basierendes Design, um Eingabebilder in hochdimensionale Merkmalseinbettungen umzuwandeln, die anschließend von einem leichtgewichtigen Maskendecoder verarbeitet werden, um Segmentierungsmasken basierend auf Benutzerprompts wie Punkten, Boxen oder Text zu erzeugen. Dieses Backbone wurde 2023 zusammen mit dem SAM-Framework und dem Segment-Anything-Datensatz eingeführt, der über 1 Milliarde Masken auf 11 Millionen Bildern enthält.
Der Segment Anything ViT basiert auf der standardmäßigen Vision-Transformer-Struktur, die ein Bild in feste Patches unterteilt und diese durch gestapelte Multi-Head-Attention-Schichten verarbeitet. Im Gegensatz zu früheren konvolutionalen Backbones wie Residual-Netzwerken oder U-Nets erfasst das ViT-Backbone in jeder Schicht den globalen Kontext über das gesamte Bild, was es für Aufgaben geeignet macht, die ein Verständnis von Objektgrenzen und -beziehungen erfordern. Die Architektur umfasst positionale Kodierung, um räumliche Informationen zu erhalten, und unterstützt mehrere Modellgrößen - ViT-B, ViT-L und ViT-H - wobei die größte Version etwa 632 Millionen Parameter aufweist.
Architektur und Design
Der Segment Anything ViT folgt dem ursprünglichen Vision-Transformer-Design von Dosovitskiy und Kollegen, mit Modifikationen, die auf dichte Vorhersageaufgaben zugeschnitten sind. Er verwendet eine Patchgröße von 16x16 Pixeln, was bedeutet, dass ein 1024x1024-Eingabebild in 64x64 Patches unterteilt wird. Jeder Patch wird linear in einen Einbettungsvektor projiziert, und eine lernbare positionale Kodierung wird vor den Transformer-Blöcken hinzugefügt. Das Backbone verwendet intern eine standardmäßige Encoder-Decoder-Struktur, fungiert jedoch im SAM-Framework rein als Encoder und gibt eine Merkmalskarte aus, die durch einen Prozess der schichtweisen Hochskalierung die räumliche Auflösung beibehält.
Eine zentrale Designentscheidung ist die Verwendung eines globalen Aufmerksamkeitsmechanismus anstelle von fensterbasierter Aufmerksamkeit. Dies ermöglicht es dem Modell, das gesamte Bild zu berücksichtigen, wenn es Merkmale für einen bestimmten Patch berechnet, was für die Segmentierung von Objekten wichtig ist, die große Bereiche überspannen oder mehrdeutige Grenzen aufweisen. Das Backbone integriert außerdem ein Neck-Modul, das die Merkmalsdimension auf einen kompakten Einbettungsraum, typischerweise 256 Kanäle, reduziert, bevor die Ausgabe an den Maskendecoder übergeben wird.
Training und Daten
Der Segment Anything ViT wurde auf dem Segment-Anything-Datensatz trainiert, einer groß angelegten Sammlung von 11 Millionen Bildern mit über 1 Milliarde Segmentierungsmasken. Dieser Datensatz wurde mithilfe einer Daten-Engine erstellt, die automatische Maskengenerierung mit menschlicher Verfeinerung kombinierte. Der Trainingsprozess verwendete eine Kombination aus überwachtem Lernen auf den Maskenannotationen und einem Modell-im-Loop-Ansatz, bei dem das ViT-Backbone iterativ verbessert wurde, während neue Masken generiert wurden.
Das Training verwendete standardmäßige Deep-Learning-Techniken, einschließlich Adam-Optimierer für die Optimierung, Datenaugmentierung zur Verbesserung der Generalisierung und Gradienten-Clipping zur Stabilisierung des Trainings. Das Modell wurde auf einem GPU-Cluster trainiert, wobei spezifische Hardwaredetails nicht öffentlich dokumentiert sind. Die ViT-H-Variante mit ihrer größeren Kapazität erreichte die höchste Segmentierungsqualität, erforderte jedoch mehr Rechenressourcen für Training und Inferenz.
Anwendungen und Auswirkungen
Der Segment Anything ViT ermöglichte es dem SAM-Modell, Zero-Shot-Segmentierung durchzuführen - die Fähigkeit, Objekte in Bildern ohne vorheriges Feintuning auf spezifische Kategorien zu segmentieren. Dies hat breite Anwendungen in Künstlicher-Intelligenz-Bereichen wie medizinischer Bildgebung, autonomen Fahren und Robotik. Beispielsweise kann das Backbone mit Cross-Attention-Mechanismen kombiniert werden, um Textprompts zu integrieren, sodass Benutzer Objekte segmentieren können, indem sie sie in natürlicher Sprache beschreiben.
Die Veröffentlichung von SAM und seinem ViT-Backbone beeinflusste nachfolgende Forschung in interaktiver Segmentierung und Foundation-Modellen für Computer Vision. Es zeigte, dass ein einzelnes Modell, das auf vielfältigen Daten trainiert wurde, auf ungesehene Objekte und Szenen generalisieren kann, ähnlich wie große Sprachmodelle über Textaufgaben generalisieren. Die Architektur wurde für andere dichte Vorhersageaufgaben angepasst, einschließlich Tiefenschätzung und Kantenerkennung, und wurde in verschiedene Open-Source-Toolkits integriert.
Leistung und Einschränkungen
In Benchmark-Evaluierungen erreichte das Segment-Anything-ViT-H-Backbone starke Leistungen bei standardmäßigen Segmentierungsmetriken wie dem mittleren Intersection over Union (mIoU) über mehrere Datensätze. Das Modell hat jedoch bekannte Einschränkungen. Es kann bei sehr kleinen Objekten, stark verdeckten Objekten oder Bildern mit ungewöhnlichen Lichtverhältnissen Schwierigkeiten haben. Das ViT-Backbone ist außerdem rechenintensiv und erfordert erheblichen Speicher und Verarbeitungsleistung, was seine Verwendung auf Edge-Geräten ohne Optimierung einschränkt.
Die Forschung hat gezeigt, dass die Leistung des Backbones abnimmt, wenn Eingabebilder erheblich verkleinert werden, da feine Details im Patch-Einbettungsprozess verloren gehen. Darüber hinaus versteht das Modell keine Objektsemantik von Natur aus - es segmentiert basierend auf visuellen Mustern anstatt auf Kategoriewissen, was in mehrdeutigen Fällen zu Über- oder Untersegmentierung führen kann.
Verwandte Entwicklungen
Der Segment Anything ViT baut auf früheren Arbeiten zu Vision-Transformatoren auf, einschließlich des ursprünglichen ViT-Modells und nachfolgender Verbesserungen wie hierarchischer Designs. Er unterscheidet sich von konvolutionalen Ansätzen wie Residual-Netzwerken und U-Nets, die Bilder durch lokale rezeptive Felder verarbeiten. Das Backbone hat auch Folgemodelle inspiriert, die effiziente Aufmerksamkeitsmechanismen oder spärliche Transformatoren integrieren, um die Rechenkosten zu reduzieren.
Im breiteren Kontext von generativer KI repräsentiert der Segment Anything ViT einen Wandel hin zu vereinheitlichten Modellen, die mehrere visuelle Aufgaben mit einer einzigen Architektur bewältigen können. Sein Erfolg hat ähnliche Bemühungen in anderen Bereichen wie Audio- und Videosegmentierung gefördert und zum wachsenden Ökosystem von Open-Source-KI-Modellen beigetragen.