Nikolaj Buhl: Segment Anything Model (SAM) erklärt


Dieser Artikel wurde aus dem Blog von Dr. Nikolaj Buhl übersetzt

Eine kurze Geschichte der künstlichen Intelligenz und Computer Vision von Meta

Als eines der führenden Unternehmen im Bereich künstlicher Intelligenz (KI) hat Meta die Grenzen maschineller Lernmodelle erweitert. Von kürzlich veröffentlichten Open-Source-Modellen wie LLaMA bis hin zur Entwicklung der am häufigsten verwendeten ML- und KI-Python-Bibliothek PyTorch.

Die folgenden Abschnitte befassen sich mit den Fortschritten in der Computer Vision und der Entwicklung der zugrunde liegenden Modelle.

Fortschritte in der Computer Vision

Auch bei der maschinellen Bilderkennung wurden beträchtliche Fortschritte erzielt, wobei Modelle wie CLIP die Lücke zwischen Text- und Bildverständnis schließen.

Diese Modelle nutzen kontrastives Lernen, um Text- und Bilddaten abzubilden. Dies ermöglicht ihnen die Verallgemeinerung auf neue visuelle Konzepte und Datenverteilungen mit Just-in-Time-Engineering.

Das Segment Anything Model (SAM) von FAIR ist der neueste Durchbruch auf diesem Gebiet. Ihr Ziel ist es, ein Basismodell für die Bildsegmentierung zu erstellen, das mithilfe von Hint Engineering an verschiedene nachgelagerte Aufgaben angepasst werden kann.

Lassen Sie uns kurz einige der wichtigsten Entwicklungen im Bereich Computer Vision untersuchen, die zur Entwicklung von KI-Systemen wie Meta beigetragen haben.

Faltungs-Neuronale Netze (CNNs)

CNNs wurden erstmals 1989 von Yann LeCun (heute Vizepräsident und leitender KI-Wissenschaftler von Meta) eingeführt und sind zum Rückgrat moderner Computer-Vision-Systeme geworden, die es Maschinen ermöglichen, komplexe Muster in Bildern automatisch zu lernen und zu erkennen.

Durch die Verwendung von Faltungsschichten können CNNs sowohl lokale als auch globale Merkmale in Bildern erfassen und so Objekte, Szenen und Aktionen effektiv erkennen. Dies hat zu erheblichen Verbesserungen bei Aufgaben wie Bildklassifizierung, Objekterkennung und semantischer Segmentierung geführt.

Generative Adversarial Networks (GAN)

GAN ist ein Deep-Learning-Modell, das 2014 von Ian Goodfellow und seinem Team vorgeschlagen wurde. Sie bestehen aus zwei konkurrierenden neuronalen Netzen (Generator und Diskriminator).

Generatoren zielen darauf ab, realistische Ausgaben zu erzeugen, während Diskriminatoren versuchen, echte Ausgaben von generierten Ausgaben zu unterscheiden. Der Wettbewerb zwischen diesen Netzwerken hat zur Schaffung immer realistischerer synthetischer Bilder geführt und zu Fortschritten bei Aufgaben wie Bildsynthese, Datenerweiterung und Stilübertragung geführt.

Transferlernen und vorab trainierte Modelle

Ähnlich wie NLP hat Computer Vision von der Entwicklung vorab trainierter Modelle profitiert, die für bestimmte Aufgaben feinabgestimmt werden können. Modelle wie ResNet , VGG und EfficientNet wurden auf großen Bilddatensätzen trainiert, sodass Forscher diese Modelle als Ausgangspunkt für ihre eigenen Projekte verwenden können.

Wachstum des Basismodells

Grundlegende Modelle in der Verarbeitung natürlicher Sprache (NLP) haben in den letzten Jahren erhebliche Fortschritte gemacht, wobei Modelle wie Metas eigenes LLaMa oder OpenAIs GPT-4 bemerkenswerte Fähigkeiten für Zero- und Few-Learning demonstrieren.

Diese Modelle werden auf großen Datenmengen vorab trainiert und können mithilfe von Hint Engineering auf neue Aufgaben und Datenverteilungen verallgemeinert werden. Meta AI hat eine wichtige Rolle bei der Weiterentwicklung des Fachgebiets, der Erleichterung der Forschung und der Entwicklung groß angelegter NLP-Modelle mit weitreichenden Anwendungen gespielt.

Hier untersuchen wir Faktoren, die zum Wachstum des zugrunde liegenden Modells beitragen.

Sprachmodell im großen Maßstab

Das Aufkommen groß angelegter Sprachmodelle wie GPT-4 war eine treibende Kraft bei der Entwicklung grundlegender Modelle für NLP. Diese Modelle nutzen Deep-Learning-Architekturen mit Milliarden von Parametern und ermöglichen es ihnen, komplexe Muster und Strukturen in den Trainingsdaten zu erfassen.

Transferlernen

Ein wesentliches Merkmal grundlegender Modelle im NLP sind ihre Transferlernfähigkeiten . Sobald sie mit großen Datensätzen trainiert wurden, können sie auf kleinere, aufgabenspezifische Datensätze verfeinert werden, um bei einer Vielzahl von Aufgaben eine Leistung auf dem neuesten Stand der Technik zu erzielen.

Zero-Shot- und Fence-Shot-Lernen

Basismodelle sind auch beim Zero-Shot- und Few-Shot-Lernen vielversprechend, wo sie Aufgaben ohne Feinabstimmung oder minimale aufgabenspezifische Trainingsdaten ausführen können. Diese Fähigkeit ist zu einem großen Teil auf die Fähigkeit des Modells zurückzuführen, menschenähnliche Reaktionen basierend auf dem durch die Hinweise bereitgestellten Kontext zu verstehen und zu generieren.

Multimodales Lernen

Ein weiterer Bereich von wachsendem Interesse ist das multimodale Lernen, bei dem ein zugrunde liegendes Modell darauf trainiert wird, Inhalte über verschiedene Modalitäten hinweg, etwa Text und Bilder, zu verstehen und zu generieren.

Modelle wie CLIP und ALIGN zeigen, wie NLP und Computer Vision zusammen verwendet werden können, um multimodale Modelle zu erstellen, die Aktionen von einer Domäne in eine andere übertragen können.

Ethische Überlegungen und Sicherheit

Das Wachstum grundlegender Modelle im NLP hat auch Bedenken hinsichtlich ihrer ethischen Auswirkungen und Sicherheit geweckt. Forscher suchen aktiv nach Möglichkeiten, potenzielle Verzerrungen abzumildern, Probleme bei der Inhaltsgenerierung anzugehen und sichere und kontrollierbare KI-Systeme zu entwickeln. Ein Beweis dafür ist die jüngste Forderung nach einem sechsmonatigen Stopp aller Spitzenmodellentwicklungen.

Vergleich des Segment Anything-Modells mit früheren Modellen

SAM ist ein großer Fortschritt für die KI, da es auf den Grundlagen früherer Modelle aufbaut. SAMs können Eingabehinweise von anderen Systemen übernehmen, z. B. in Zukunft den Blick des Benutzers von AR/VR-Headsets zur Auswahl von Objekten nutzen, Ausgabemasken für die Videobearbeitung verwenden, 2D-Objekte in 3D-Modelle abstrahieren oder sogar die beliebte Google Fotos-Aufgabe ausführen. Zum Beispiel eine Collage erstellen.

Es kann schwierige Fälle bewältigen, indem es mehrere gültige Masken generiert, wenn der Hinweis unklar ist. Nehmen Sie als Beispiel die Benutzeraufforderung, Waldo zu finden:

Fügen Sie hier eine Bildbeschreibung ein
Einer der Gründe, warum die Quell-
SAM-Ergebnisse bahnbrechend sind , ist die gute Vergleichbarkeit von Segmentierungsmasken mit anderen Techniken wie ViTDet. Die folgende Abbildung zeigt einen Vergleich der beiden Techniken:
Fügen Sie hier eine Bildbeschreibung ein
In der Forschungsarbeit werden die Ergebnisse der beiden Techniken detaillierter verglichen

Erhalten Sie Einblick in die Netzwerkarchitektur und das Design von SAM

Das Design von SAM hängt von drei Hauptkomponenten ab:

1. Eine anspielbare Segmentierungsaufgabe ermöglicht eine Zero-Shot-Generalisierung.
2. Modellarchitektur.
3. Datensätze, die Aufgaben und Modelle unterstützen.

Fügen Sie hier eine Bildbeschreibung ein

Aufgabe

SAM wird auf Millionen von Bildern und über einer Milliarde Masken trainiert und gibt für jeden Hinweis eine gültige Segmentierungsmaske zurück. In diesem Fall ist der Hinweis die Segmentierungsaufgabe , bei der es sich um Vordergrund-/Hintergrundpunkte, dicke Kästchen oder Masken, Klicks, Text oder allgemein um alles handeln kann, was angibt, was im Bild segmentiert werden soll. Diese Aufgabe wird auch als Vortrainingsziel für das Modell verwendet.

Modell

Die Architektur von SAM besteht aus drei Komponenten, die zusammenarbeiten, um eine effektive Segmentierungsmaske zurückzugeben:

  • Ein Bildencoder zum Generieren von One-Shot-Bildeinbettungen.
  • Hinweis-Encoder für eingebettete Hinweise .
  • Ein eingebetteter , leichter Maskendecoder , der Hinweise und Bildencoder kombiniert .

Fügen Sie hier eine Bildbeschreibung ein
Wir werden uns im nächsten Abschnitt eingehender mit der Architektur befassen, aber werfen wir zunächst einen Blick auf den Datensatz.

Daten-Engine und Datensatz

Daten-Engines werden benötigt, um Aufgaben zu unterstützen und Datensätze und Modelle zu verbessern. Die Daten-Engine ist in drei Phasen unterteilt:

  • Assisted-manual , wobei SAM Annotatoren beim Annotieren von Masken unterstützt, ähnlich dem klassischen interaktiven Segmentierungssetup.
  • Halbautomatisch : Der SAM kann automatisch Masken für eine Teilmenge von Objekten generieren, indem er auf mögliche Objektpositionen hinweist, und der Annotator konzentriert sich auf die Kommentierung der verbleibenden Objekte, was zur Erhöhung der Maskenvielfalt beiträgt.
  • Vollautomatische menschliche Annotatoren übermitteln dem SAM ein regelmäßiges Raster aus Vordergrundpunkten, was durchschnittlich 100 hochwertige Masken pro Bild ergibt.

Die Daten-Engine erstellt ein großes Segment jedes von Meta AI veröffentlichten 1-Milliarden-Maskendatensatzes

SAM

Fügen Sie hier eine Bildbeschreibung ein

Bildkodierer

Auf der höchsten Ebene erzeugen Bildencoder (maskierte Autoencoder, MAE, vortrainierte visuelle Transformatoren, VIT) einmalige Bildeinbettungen, die vor dem Cueing des Modells angewendet werden können.

Hinweis-Encoder

Der Hinweis-Encoder kodiert Hintergrundpunkte, Masken, Begrenzungsrahmen oder Text in Einbettungsvektoren in Echtzeit. Die Studie berücksichtigte zwei Sätze von Hinweisen: spärlich (Punkte, Kästchen, Text) und dicht (Masken).

Punkte und Kästchen werden durch Positionskodierungen dargestellt, und für jeden Hinweistyp werden erlernte Einbettungen hinzugefügt. Freiform-Textaufforderungen werden durch gebrauchsfertige Text-Encoder von CLIP dargestellt. Dichte Eingabeaufforderungen wie Masken und Einbettungen werden gefaltet und elementweise mit Bildeinbettungen summiert.

Maskendecoder

Ein leichter Maskendecoder sagt Segmentierungsmasken basierend auf Einbettungen von Bild- und Hinweis-Encodern voraus. Es ordnet Bildeinbettungen, Hinweiseinbettungen und Ausgabetoken Masken zu. Alle Einbettungen werden vom Decoderblock aktualisiert, der Cue -Selbstaufmerksamkeit und Queraufmerksamkeit in beide Richtungen (vom Cue zur Bildeinbettung und zurück) verwendet .

Masken werden mit Anmerkungen versehen und zum Aktualisieren der Modellgewichte verwendet. Dieses Layout verbessert den Datensatz und ermöglicht es dem Modell, im Laufe der Zeit zu lernen und sich zu verbessern, wodurch es effizient und flexibel wird.

Teilen Sie einen beliebigen maskierten Datensatz von 1 Milliarde auf

Der Datensatz „Segment Anything 1 Billion Masks“ (SA-1B) ist der bisher größte beschriftete Segmentierungsdatensatz. Es ist für die Entwicklung und Bewertung erweiterter Segmentierungsmodelle konzipiert.

Wir glauben, dass der Datensatz ein wichtiger Bestandteil des Trainings und der Feinabstimmung zukünftiger allgemeiner Modelle sein wird. Dadurch können sie bei verschiedenen Segmentierungsaufgaben eine überlegene Leistung erzielen. Derzeit ist dieser Datensatz nur im Rahmen einer Forschungslizenz verfügbar.

Der SA-1B-Datensatz ist insofern einzigartig:

Diversität

Die Datensätze werden sorgfältig kuratiert, um ein breites Spektrum an Domänen, Objekten und Szenarien abzudecken und sicherzustellen, dass sich die Modelle gut auf verschiedene Aufgaben übertragen lassen. Es umfasst Bilder aus verschiedenen Quellen wie Naturszenen, städtischen Umgebungen, medizinischen Bildern, Satellitenbildern usw.

Diese Vielfalt hilft Modellen dabei, Objekte und Szenen unterschiedlicher Komplexität, Größe und Kontext zu segmentieren.

Größe

Der SA-1B-Datensatz enthält mehr als 1 Milliarde hochwertige kommentierte Bilder und stellt ausreichend Trainingsdaten für das Modell bereit. Die enorme Datenmenge hilft dem Modell, komplexe Muster und Darstellungen zu erlernen, sodass es bei verschiedenen Segmentierungsaufgaben eine Spitzenleistung erzielen kann.
Fügen Sie hier eine Bildbeschreibung ein

hochwertige Anmerkung

Der Datensatz wurde sorgfältig mit hochwertigen Masken versehen, was zu genaueren und detaillierteren Segmentierungsergebnissen führt. In einer Responsible AI (RAI)-Analyse des SA-1B-Datensatzes werden potenzielle Gerechtigkeitsprobleme und Verzerrungen bei der geografischen Verteilung und der Einkommensverteilung untersucht.

Das Forschungspapier zeigt, dass SA-1B einen viel höheren Anteil an Bildern aus Europa, Asien und Ozeanien sowie Ländern mit mittlerem Einkommen aufweist als andere Open-Source-Datensätze. Bemerkenswert ist, dass der SA-1B-Datensatz mindestens 28 Millionen Masken für alle Regionen, einschließlich Afrika, enthält. Dies ist das Zehnfache der Gesamtzahl der Masken in jedem vorherigen Datensatz.
Fügen Sie hier eine Bildbeschreibung ein

Ist das Segment Anything-Modell Open Source?

Die kurze Antwort lautet: Ja! Der SA-1B-Datensatz wurde als Open Source für Forschungszwecke unter https://github.com/facebookresearch/segment-anything veröffentlicht. Darüber hinaus hat Meta AI im Einklang mit FAIRs Engagement für offene Forschung die Vorabversion unter veröffentlicht Apache 2.0, eine freizügige Lizenz. Trainieren Sie das Modell (ca. 2,4 GB groß) und den Code. Es ist auf GitHub frei zugänglich. Außerdem wird ein Trainingsdatensatz zusammen mit einer interaktiven Demo-Web-Benutzeroberfläche bereitgestellt .

おすすめ

転載: blog.csdn.net/m0_60920298/article/details/130042868