KI-Modelle und Plattformen
TinySAM : Effizientes Segment-Anything-Modell
Die Objektsegmentierung ist ein grundlegendes und sehr wichtiges Feld in der modernen Computer-Vision. Sie spielt eine entscheidende Rolle in Anwendungen, die umfangreiche visuelle Komponenten erfordern, wie Objekterkennung und -lokalisierung, und erfordert Echtzeit-, schnelle und genaue Segmentierung. Diese Bedeutung hat die Objektsegmentierung zu einem ständig aktuellen Forschungsthema gemacht, mit bedeutenden Arbeiten in Bereichen wie Instanzsegmentierung, semantischer Segmentierung und panoptischer Segmentierung.
Im Laufe der Entwicklung der Objektsegmentierung ist das Segment-Anything-Modell (SAM) als bemerkenswertes Werkzeug aufgetaucht, das herausragende Segmentierungsfähigkeiten zeigt und schnell in verschiedenen Computer-Vision-Anwendungen eingesetzt wird. Frameworks, die eine vorgefertigte SAM-Architektur verwenden, haben beeindruckende Leistungen in nachgelagerten Visionstasks erzielt. Allerdings erfordert die komplexe und schwere Architektur des SAM trotz seiner Fähigkeiten und hoher Genauigkeit bei Segmentierungsaufgaben erhebliche Rechenleistung, was seine Implementierung auf rechenleistungsbegrenzten Geräten behindert.
Um die Rechenleistungsprobleme des SAM anzugehen, haben Forscher das Tiny Segment Anything Model (TinySAM) entwickelt, das die Null-Shot-Leistung des ursprünglichen Frameworks beibehält, während es leichter ist. TinySAM verwendet eine Full-Stage-Wissensdestillationsmethode mit Online-Hard-Prompts, um ein effizienteres Studentenmodell zu erstellen. Die post-training-Quantifizierung, die auf promptable Segmentierungsaufgaben abgestimmt ist, reduziert die Rechenleistungsanforderungen weiter. Darüber hinaus zielt die TinySAM-Architektur auf eine hierarchische Segmentierung ab, die die Inferenzgeschwindigkeit fast verdoppelt, ohne die Leistung zu beeinträchtigen.
Dieser Artikel geht auf das TinySAM-Framework ein, indem es seine grundlegenden Prinzipien, Architektur und Leistung im Vergleich zu anderen State-of-the-Art-Segmentierungsframeworks untersucht. Lassen Sie uns diese Aspekte genauer betrachten.
TinySAM : Effizientes Segment-Anything-Modell
Das Segment-Anything-Modell hat den schnellen Fortschritt mehrerer Computer-Vision-Anwendungen ermöglicht, dank seiner bemerkenswerten Segmentierungsfähigkeiten und eines umfangreichen Segmentierungsdatensatzes, der über 11 Millionen Bilder und über eine Milliarde Bildmasken enthält. Aufgrund seiner außergewöhnlichen Leistung bei Aufgaben, die Objekte mit beliebigen Kategorien und Formen segmentieren, dient es als Grundlage für Frameworks, die nachgelagerte Aufgaben wie Bildretusche, Objekterkennung, 3D-Vision und mehr durchführen. Darüber hinaus bietet das Segment-Anything-Modell auch bemerkenswerte Zero-Shot-Segmentierung, die der medizinischen Forschung und medizinischen Bildgebung zugutegekommen ist.
Obwohl man die bemerkenswerten Segmentierungsfähigkeiten des Segment-Anything-Modells auf einer Vielzahl von nachgelagerten Visionstasks nicht in Frage stellen kann, hat es auch Nachteile in Bezug auf eine komplexe architektonische Überlastung, hohe Rechenleistungsanforderungen und erhebliche Betriebskosten. Für ein System, das auf einem modernen GPU läuft, kann die Inferenzzeit eines SAM-Modells bis zu 2 Sekunden für ein 1024×1024-Bild betragen. Als Ergebnis ist es sehr schwierig, SAM-Anwendungen auf Geräten mit begrenzten Rechenleistungsressourcen zu implementieren. Um diese Hürde zu überwinden, haben aktuelle Arbeiten wie MobileSAM und FastSAM versucht, ein SAM-Modell mit höherer Rechenleistungseffizienz zu entwickeln. Das MobileSAM-Framework versucht, den schweren Komponenten im Bildencoder durch die Architektur des TinyViT-Frameworks zu ersetzen, während das FastSAM-Modell die Segmentierungsaufgabe auf eine Instanzsegmentierungsaufgabe mit nur einer Kategorie mit dem YoloV8-Modell überträgt. Obwohl diese Methoden einige Erfolge bei der Reduzierung der Rechenleistungsanforderungen erzielt haben, konnten sie die Leistung nicht aufrechterhalten, insbesondere bei nachgelagerten Zero-Shot-Aufgaben.
TinySAM oder das Tiny Segment Anything Model ist ein Versuch, die Rechenleistungsanforderungen des aktuellen SAM-Modells zu reduzieren, ohne die Leistung bei Zero-Shot-Downstream-Aufgaben zu beeinträchtigen. Darüber hinaus schlägt das TinySAM-Framework vor, eine Full-Stage-Wissensdestillationsmethode in seiner Architektur zu implementieren, um die Fähigkeit des kompakten Studentennetzwerks zu verbessern. Das TinySAM-Framework destilliert das Studentennetzwerk auf eine End-to-End-Weise unter der Aufsicht des Lehrernetzwerks aus verschiedenen Stadien. Um die Leistung weiter zu verbessern, ermöglicht das Framework, dass der Destillationsprozess mehr auf schwierige Beispiele achten kann, indem es eine zusätzliche Online-Hard-Prompt-Sampling-Strategie implementiert. Darüber hinaus reduziert das TinySAM-Framework die Rechenleistungsanforderungen weiter, indem es die post-training-Quantifizierung auf promptable Segmentierungsaufgaben anwendet.
Der größte Teil der Rechenleistungsanforderungen des Segment-Anything-Modells liegt darin, dass das Modell massive Masken aus den Grid-Punkten generiert, um alles im Bild zu segmentieren. Um die Rechenleistungsanforderungen dieser Segmentierungsstrategie zu überwinden, verwendet das TinySAM-Framework eine hierarchische Segmentierungsstrategie, die fast die Inferenzgeschwindigkeit verdoppelt, ohne die Leistung zu beeinträchtigen.
TinySAM : Architektur und Methodik
Bevor wir über die Architektur und Methodik des TinySAM-Frameworks sprechen, ist es wichtig, zunächst einen Blick auf sein Vorgänger-Modell, das SAM-Modell, zu werfen. Seit seiner Einführung hat das Segment-Anything-Modell bemerkenswerte Leistung, Vielseitigkeit und Generalisierungsfähigkeit bei einer Vielzahl von nachgelagerten Vision- und Objektsegmentierungsaufgaben gezeigt.
Im Kern besteht das SAM-Modell aus drei Subnetzwerken: dem Prompt-Encoder, dem Bild-Encoder und dem Mask-Decoder. Der Hauptzweck des Prompt-Encoders ist es, die willkürlich geformten Masken, Eingabepunkte und -boxen sowie freie Texte mit Positionsinformationen zu kodieren. Der Bild-Encoder ist ein schweres ViT- oder Vision-Transformer-basiertes Netzwerk, das das Eingabebild in Embeddings umwandelt. Das Modell verwendet verschiedene Netzwerke, um die geometrischen und textbasierten Prompts zu verarbeiten. Schließlich enthält der Mask-Decoder einen zweifachen Transformer, der die Ausgabe des Prompt- und Bild-Encoders erhält, um die endgültige Maskenvorhersage zu generieren. Mit dem Datensatz zeigt das SAM-Framework bemerkenswerte hochwertige Segmentierungsfähigkeiten für Objekte unabhängig von ihrer Form und Kategorie. Darüber hinaus zeigt das Segment-Anything-Modell bemerkenswerte Leistung und Effizienz bei Zero-Shot-Downstream-Visionstasks, einschließlich Objekterkennung, Kantenverfolgung, Text-zu-Masken-Vorhersage und Instanzsegmentierung. Aufgrund seiner hochwertigen Segmentierungsfähigkeiten und flexiblen Prompt-Angeboten bilden die SAM-Frameworks die Grundlage für Vision-Anwendungen. Allerdings kann man die hohen Rechenleistungsanforderungen der traditionellen SAM-Architektur mit einer großen Anzahl von Parametern nicht ignorieren, was es fast unmöglich macht, SAM-basierte Anwendungen auf Geräten mit begrenzten Ressourcen zu implementieren.
Wissensdestillation
Wissensdestillation ist ein wichtiger Ansatz, um die Leistung von kompakten Netzwerken während der Trainingsphase zu verbessern. Die Wissensdestillationsmethode, die die Ausgabe des Lehrernetzwerks verwendet, um das Training des leichten Studentennetzwerks zu überwachen, kann in zwei Unterkategorien unterteilt werden: Destillation für Zwischenmerkmale und Destillation für Netzwerkausgaben, wobei die Mehrheit der Forschungsarbeiten zur Wissensdestillation sich auf Bildklassifizierungsaufgaben konzentriert.
Wie bereits erwähnt, zeigt die folgende Abbildung die generische Architektur des TinySAM-Frameworks sowie die Leistungsübersicht bei Zero-Shot-Instanzsegmentierungsaufgaben.

In der ersten Phase implementiert das TinySAM-Framework eine Wissensdestillation, die speziell für das SAM-Framework konzipiert ist, und um den Destillationsprozess weiter zu aktivieren, verwendet das Modell eine Online-Hard-Prompt-Sampling-Strategie, um die harten Kenntnisse an das Studentennetzwerk vom Lehrernetzwerk zu übertragen. In der zweiten Phase passt das TinySAM-Framework die post-training-Quantifizierungsmethode an promptable Segmentierungsaufgaben an und wendet sie auf das leichte Studentennetzwerk an. Schließlich implementiert das Modell den hierarchischen Segmentierungsmodus, der für Segmentierungsaufgaben konzipiert ist und die Inferenzgeschwindigkeit fast verdoppelt, ohne die Genauigkeit zu beeinträchtigen.
Full-Stage-Wissensdestillation
Wie bereits erwähnt, besteht das Segment-Anything-Modell im Kern aus drei Subnetzwerken: dem Prompt-Encoder, dem Bild-Encoder und dem Mask-Decoder, wobei der Bild-Encoder-Komponente auf einem Vision-Transformer basiert und hohe Rechenleistungsanforderungen hat. Um dieses Problem zu lösen, implementiert das TinySAM-Framework eine Full-Stage-Wissensdestillationsmethode, die den leichten Bild-Encoder vom Lernlevel bis zum Mehrfachwissenslevel leitet. Darüber hinaus führt das TinySAM-Framework zahlreiche Destillationsverluste während verschiedener Stadien ein, wie in der folgenden Abbildung gezeigt.

Quantifizierung
Modell-Quantifizierung ist ein beliebter Ansatz in Computer-Vision-Frameworks und wird verwendet, um das Modell durch Quantifizierung von Gewichten oder Aktivierungen von höherer zu niedrigerer Bandbreite zu komprimieren, um die Rechenleistungsanforderungen und Speicheranforderungen ohne signifikante Beeinträchtigung der Ausgabegüte zu reduzieren.
Das primäre Ziel der Quantifizierung in TinySAM ist es, den Float-Tensor auf den Bit-Integer-Tensor mit einem Skalierungsfaktor zu projizieren, wobei der Metrik zur Messung der Distanz zwischen der Matrixmultiplikation und der quantifizierten Matrix eine wichtige Rolle bei der Optimierung des Skalierungsfaktors spielt.
Hierarchisches Segmentieren
Das Segment-Anything-Modell schlägt vor, einen automatischen Maskengenerator zu verwenden, der Punkte als Gitter sampelt, um alles im Bild zu segmentieren. Allerdings wurde festgestellt, dass die Verwendung eines dichten Punktgitters zu überfein granulierten Segmentierungsausgaben führt und der Prozess massive Rechenleistungsanforderungen und hohe Betriebskosten erfordert. Darüber hinaus kann auf der einen Seite die Verwendung zu vieler Sampelpunkte für ein vollständiges Objekt dazu führen, dass verschiedene Abschnitte des Objekts falsch als separate Masken segmentiert werden, während auf der anderen Seite die Zeitkosten des Everything-Modus- Inferenz hauptsächlich darauf zurückzuführen sind, dass der Bild-Encoder stark geschrumpft wurde. Um die Betriebskosten des Everything-Modus zu reduzieren, verwendet das TinySAM-Framework einen hierarchischen Maskengenerierungsansatz, wobei der Unterschied in der Strategie mit dem ursprünglichen SAM-Framework in der folgenden Abbildung gezeigt wird.

Anders als der Ansatz, der im ursprünglichen SAM-Framework implementiert wurde, verwendet das TinySAM-Modell nur 25% der Punkte auf jeder Seite, wodurch es nur 1/16 der verfügbaren Punkte im ursprünglichen Setting verwendet. Das Modell inferiert dann den Mask-Decoder und den Prompt-Encoder mit diesen Prompts und erhält die Ausgabe. Das Modell filtert dann einige Masken mit einer Konfidenz, die einen bestimmten Schwellenwert übersteigt, und maskiert die entsprechenden Bereiche als potenzielle endgültige Vorhersagen. Da das Modell diese Bereiche als Segmentierungsergebnis von Instanzen mit hoher Konfidenz behandelt, muss es keine Punkt-Prompts generieren. Die Strategie hilft nicht nur dabei, eine überfeine granulierte Segmentierung des Objekts zu vermeiden, sondern reduziert auch die Betriebskosten und Rechenleistungsanforderungen erheblich. Das Framework kombiniert und postprozessiert dann die Ergebnisse dieser beiden Runden, um die endgültigen Masken zu erhalten.
TinySAM : Experimente und Ergebnisse
Um den Destillationsprozess zu beschleunigen, berechnet und speichert das TinySAM-Framework die Bild-Embeddings vom Lehrernetzwerk im Voraus, wodurch es nicht mehr erforderlich ist, den schweren Bild-Encoder des Lehrernetzwerks während der Trainingsphase erneut zu berechnen. Bei der post-training-Quantifizierung quantifiziert das TinySAM-Framework alle Matrixmultiplikationsschichten, Konvolutionschichten, Dekonvolutionschichten und linearen Schichten, wobei das Modell kanalsweise Skalierungsfaktoren für die Konvolutions- und Dekonvolutionschichten verwendet. Für die Matrixmultiplikationsschichten implementiert das Modell kopfweise Skalierungsfaktoren, während für die linearen Schichten lineare Skalierungsfaktoren verwendet werden. Das Modell führt auch eine Bewertung bei Zero-Shot-Downstream-Aufgaben durch.
Bei Instanzsegmentierungsaufgaben in einer Zero-Shot-Einstellung folgt das TinySAM-Framework den experimentellen Einstellungen seines Vorgängers, des Segment-Anything-Modells, und verwendet die Objekterkennungsergebnisse des Vision-Transformer-Det-H- oder VitDet-H-Frameworks für die Instanzsegmentierung. Wie in der folgenden Abbildung gezeigt, übertrifft das TinySAM-Framework bestehende Methoden in Bezug auf Instanzsegmentierungsgenauigkeit und FLOPs-Score.

Darüber hinaus zeigt die folgende Abbildung die qualitative Leistung des TinySAM-Modells bei Zero-Shot-Instanzsegmentierung, wobei die grüne Box die Box-Prompts darstellt.

In Bezug auf die Zero-Shot-Punkte-Gültigkeitsbewertung übertrifft das TinySAM-Modell das MobileSAM-Framework erheblich auf verschiedenen Datensätzen und liefert wesentlich bessere Ergebnisse, wenn weniger Punkte als Prompts vom Framework verwendet werden.

Darüber hinaus fasst die folgende Tabelle die Ergebnisse der Beschleunigung und Reduzierung der Rechenleistungsanforderungen zusammen, die durch die hierarchische Everything-Modus-Strategie erzielt wurden. Das Modell wendet den gleichen Stabilitätsgrad und Schwellenwert mit verschiedenen Strategien für einen fairen Vergleich an, und die Ergebnisse sind wie folgt.

Final Thoughts
In diesem Artikel haben wir über TinySAM gesprochen, ein vorgeschlagenes Framework, das die Grenzen für die Segmentierung von Aufgaben erweitert und ein effizientes Modellarchitektur mit geringeren Rechenleistungsanforderungen und Genauigkeit im Vergleich zum ursprünglichen SAM-Framework bietet. TinySAM oder das Tiny Segment Anything Model, das die Zero-Shot-Leistung des ursprünglichen Frameworks beibehält. Das TinySAM-Framework implementiert zunächst eine Full-Stage-Wissensdestillationsmethode, die Online-Hard-Prompts verwendet, um ein leichtes Studentenmodell zu destillieren. Das TinySAM-Framework passt dann die post-training-Quantifizierung an promptable Segmentierungsaufgaben an, was weiter hilft, die Rechenleistungsanforderungen zu reduzieren. Darüber hinaus zielt das Framework darauf ab, alles hierarchisch zu segmentieren, was die Inferenzgeschwindigkeit fast verdoppelt, ohne die Leistung zu beeinträchtigen.












