Einführung

Bildklassifizierung hat durch die Einführung von Besseren eine große Anwendung im wirklichen Leben gefunden Pc Imaginative and prescient Modelle und Technologie mit genauerer Ausgabe. Es gibt viele Anwendungsfälle für diese Modelle, aber Zero-Shot-Klassifizierung und Bildpaare gehören zu den beliebtesten Anwendungen dieser Modelle.

Das SigLIP-Bildklassifizierungsmodell von Google ist ein gutes Beispiel und verfügt über einen wichtigen Leistungsbenchmark, der es zu etwas Besonderem macht. Es handelt sich um ein Bildeinbettungsmodell, das auf einem CLIP-Framework basiert, aber sogar über eine bessere Verlustfunktion verfügt.

Dieses Modell funktioniert auch ausschließlich mit Bild-Textual content-Paaren, gleicht diese ab und liefert Vektordarstellungen und Wahrscheinlichkeiten. Siglip ermöglicht die Bildklassifizierung in kleinere Übereinstimmungen und ermöglicht gleichzeitig eine weitere Skalierung. Was den Unterschied für Googles Siglip ausmacht, ist der Sigmoidverlust, der es auf eine Ebene über CLIP bringt. Das bedeutet, dass das Modell darauf trainiert ist, Bild-Textual content-Paare einzeln zu bearbeiten und nicht nur, um herauszufinden, welches am meisten übereinstimmt.

Lernziele

  • Verständnis des SigLIP-Frameworks und der Modellübersicht.
  • Lernen Sie die hochmoderne Leistung von SigLIP kennen.
  • Erfahren Sie mehr über die Sigmoid-Verlustfunktion
  • Erhalten Sie Einblick in einige reale Anwendungen dieses Modells.

Dieser Artikel wurde im Rahmen der veröffentlicht Information Science-Blogathon.

Modellarchitektur des SigLip-Modells von Google

Dieses Modell verwendet ein ähnliches Framework wie CLIP (Kontrastives Lernbild vor dem Coaching), aber mit einem kleinen Unterschied. Siglip ist ein multimodales Modell-Pc-Imaginative and prescient-System, das ihm einen Vorteil für eine bessere Leistung verschafft. Es verwendet einen Imaginative and prescient-Transformations-Encoder für Bilder, was bedeutet, dass die Bilder in Patches unterteilt werden, bevor sie linear in Vektoren eingebettet werden.

Andererseits verwendet Siglip einen Transformator-Encoder für Textual content und wandelt die eingegebene Textsequenz in dichte Einbettungen um.

Das Modell kann additionally Bilder als Eingaben verwenden und dann eine Zero-Shot-Bildklassifizierung durchführen. Es kann auch Textual content als Eingabe verwenden, da dies bei Suchanfragen und beim Abrufen von Bildern hilfreich sein kann. Die Ausgabe wären Bild-Textual content-Ähnlichkeitswerte, um bestimmte Bilder durch Beschreibungen zu versehen, wenn bestimmte Aufgaben dies erfordern. Eine weitere mögliche Ausgabe sind die Eingabebild- und Textwahrscheinlichkeiten, auch bekannt als Zero-Shot-Klassifizierung.

Ein weiterer Teil dieser Modellarchitektur sind die Fähigkeiten zum Sprachenlernen. Wie bereits erwähnt, ist das Pre-Coaching-Framework für kontrastive Lernbilder das Rückgrat des Modells. Es hilft jedoch auch dabei, die Bild- und Textdarstellung auszurichten.

Modellarchitektur des SigLip-Modells von Google

Inferenz rationalisiert den Prozess und Benutzer können bei den wichtigsten Aufgaben, nämlich der Zero-Shot-Klassifizierung und der Bewertung der Bild-Textual content-Ähnlichkeit, eine hervorragende Leistung erzielen.

Was Sie erwartet: Skalierungs- und Leistungseinblicke von SigLIP

Eine Änderung in der Architektur dieses Modells bringt einige Dinge mit sich. Dieser Sigmoidverlust eröffnet die Möglichkeit einer weiteren Skalierung mit der Chargengröße. Allerdings gibt es im Hinblick auf Leistung und Effizienz im Vergleich zu den Requirements anderer ähnlicher CLIP-Modelle noch mehr zu tun.

Die neueste Forschung zielt darauf ab, dieses Modell formoptimiert zu gestalten, wobei der SoViT-400m untersucht wird. Es wäre interessant zu sehen, wie seine Leistung im Vergleich zu anderen CLIP-ähnlichen Modellen abschneidet.

Inferenz mit SigLIP ausführen: Schritt-für-Schritt-Anleitung

So führen Sie in wenigen Schritten eine Inferenz mit Ihrem Code durch. Im ersten Teil geht es um den Import der notwendigen Bibliotheken. Sie können das Bild über einen Hyperlink eingeben oder eine Datei von Ihrem Gerät hochladen. Wenn Sie dann Ihre Ausgabe mithilfe von „Logits“ aufrufen, können Sie Aufgaben ausführen, die die Textual content-Bild-Ähnlichkeitswerte und -Wahrscheinlichkeiten überprüfen. So beginnen diese;

Importieren notwendiger Bibliotheken

from transformers import pipeline
from PIL import Picture
import requests

Dieser Code importiert die notwendigen Bibliotheken zum Laden und Verarbeiten von Bildern und zum Ausführen von Aufgaben mithilfe vorab trainierter Modelle, die von HF erhalten wurden. Die PIL-Funktionen dienen zum Laden und Bearbeiten des Bildes, während die Pipeline aus der Transformer-Bibliothek den Inferenzprozess rationalisiert.

Zusammen können diese Bibliotheken ein Bild aus dem Web abrufen und es mithilfe eines maschinellen Lernmodells für Aufgaben wie Klassifizierung oder Erkennung verarbeiten.

Laden des vorab trainierten Modells

Dieser Schritt initialisiert die Zero-Shot-Bildklassifizierungsaufgabe mithilfe der Transformatorbibliothek und startet den Prozess durch Laden der vorab trainierten Daten.

# load pipe
image_classifier = pipeline(job="zero-shot-image-classification", mannequin="google/siglip-so400m-patch14-384")

Vorbereiten des Bildes

Dieser Code lädt das aus Ihrer lokalen Datei hochgeladene Bild mithilfe der PIL-Funktion. Sie können das Bild speichern und den „image_path“ abrufen, um es in Ihrem Code zu identifizieren. Dann hilft die Funktion „picture.open“ beim Auslesen.

# load picture
image_path="/pexels-karolina-grabowska-4498135.jpg"
picture = Picture.open(image_path)

Alternativ können Sie die Bild-URL verwenden, wie im Codeblock unten gezeigt;

url="https://photos.pexels.com/pictures/4498135/pexels-photo-4498135.jpeg"
response = requests.get('https://photos.pexels.com/pictures/4498135/pexels-photo-4498135.jpeg', stream=True)
Inferenz mit SigLIP ausführen: Schritt-für-Schritt-Anleitung

Ausgabe

Das Modell wählt die Bezeichnung mit der höchsten Punktzahl als beste Übereinstimmung für das Bild, „eine Field“.

# inference
outputs = image_classifier(picture, candidate_labels=("a field", "a airplane", "a distant"))
outputs = ({"rating": spherical(output("rating"), 4), "label": output("label") } for output in outputs)
print(outputs)

So sieht die Ausgabedarstellung im Bild unten aus;

Vorbereiten des Bildes

Das Field-Etikett zeigt einen höheren Wert von 0,877, während das andere nicht annähernd herankommt.

Leistungsbenchmarks: SigLIP im Vergleich zu anderen Modellen

Sigmoid macht den Unterschied in der Architektur dieses Modells. Das ursprüngliche Clip-Modell verwendet die Softmax-Funktion, was die Definition einer Klasse professional Bild schwierig macht. Die Sigmoid-Verlustfunktion beseitigt dieses Drawback, da Google-Forscher einen Weg gefunden haben, es zu umgehen.

Nachfolgend finden Sie ein typisches Beispiel.

Leistungsbenchmarks: SigLIP im Vergleich zu anderen Modellen

Selbst wenn die Bildklasse in den Beschriftungen nicht vorhanden ist, versucht das Modell mit CLIP dennoch, eine Ausgabe mit einer Vorhersage zu liefern, die ungenau wäre. SigLIP beseitigt dieses Drawback jedoch durch eine bessere Verlustfunktion. Wenn Sie dieselben Aufgaben ausprobieren, erhalten Sie die gesamte Ausgabe, sofern die mögliche Bildbeschreibung nicht im Etikett enthalten ist, was zu einer besseren Genauigkeit führt. Sie können es im Bild unten sehen;

Leistungsbenchmarks: SigLIP im Vergleich zu anderen Modellen

Mit einem Bild einer Field in der Eingabe erhalten Sie für jedes Etikett eine Ausgabe von 0,0001.

Anwendung des SigLIP-Modells

Es gibt einige Hauptanwendungen dieses Modells, aber dies sind einige der beliebtesten potenziellen Anwendungen, die Benutzer nutzen können;

  • Sie können eine Suchmaschine erstellen, mit der Benutzer Bilder anhand von Textbeschreibungen finden können.
  • Bildunterschriften sind ein weiterer wertvoller Einsatz von SigLIP, da Benutzer Bilder beschriften und analysieren können.
  • Auch die visuelle Beantwortung von Fragen ist eine hervorragende Anwendung dieses Modells. Sie können das Modell verfeinern, um Fragen zu den Bildern und ihrem Inhalt zu beantworten.

Abschluss

Google SigLIP bietet mit der Sigmoid-Funktion eine wesentliche Verbesserung der Bildklassifizierung. Dieses Modell verbessert die Genauigkeit, indem es sich auf einzelne Übereinstimmungen von Bild-Textual content-Paaren konzentriert, was eine bessere Leistung bei Zero-Shot-Klassifizierungsaufgaben ermöglicht.

Die Fähigkeit von SigLIP zur Skalierung und höheren Präzision macht es zu einem leistungsstarken Werkzeug für Anwendungen wie Bildsuche, Untertitelung und visuelle Beantwortung von Fragen. Seine Innovationen positionieren es als herausragendes Modell im Bereich der multimodalen Modelle.

Schlüssel zum Mitnehmen

  • Das SigLIP-Modell von Google verbessert andere CLIP-ähnliche Modelle durch die Verwendung einer Sigmoid-Verlustfunktion, die die Genauigkeit und Leistung bei der Klassifizierung von Zero-Shot-Bildern verbessert.
  • SigLIP eignet sich hervorragend für Aufgaben, bei denen es um den Abgleich von Bild-Textual content-Paaren geht, es ermöglicht eine präzisere Bildklassifizierung und bietet Funktionen wie Bildunterschriften und visuelle Fragenbeantwortung.
  • Das Modell unterstützt die Skalierbarkeit für große Stapelgrößen und ist vielseitig in verschiedenen Anwendungsfällen einsetzbar, beispielsweise beim Abrufen von Bildern, bei der Klassifizierung und bei Suchmaschinen basierend auf Textbeschreibungen.

Ressourcen

Häufig gestellte Fragen

Q1. Was ist der Hauptunterschied zwischen SigLIP- und CLIP-Modellen?

A. SigLIP verwendet eine Sigmoid-Verlustfunktion, die den Abgleich einzelner Bild-Textual content-Paare ermöglicht und zu einer besseren Klassifizierungsgenauigkeit als der Softmax-Ansatz von CLIP führt.

Q2. Was sind die Hauptanwendungen des SigLIP-Modells von Google?

A. SigLIP verfügt über Anwendungen für Aufgaben wie Bildklassifizierung, Bildunterschrift, Bildabruf durch Textbeschreibungen und visuelle Beantwortung von Fragen.

Q3. Wie geht SigLIP mit Zero-Shot-Klassifizierungsaufgaben um?

A. SigLIP klassifiziert Bilder, indem es sie mit bereitgestellten Textbeschriftungen vergleicht, auch wenn das Modell nicht auf diese spezifischen Beschriftungen trainiert wurde, was es splendid für die Zero-Shot-Klassifizierung macht.

This fall. Was macht die Sigmoid-Verlustfunktion für die Bildklassifizierung vorteilhaft?

A. Die Sigmoid-Verlustfunktion hilft, die Einschränkungen der Softmax-Funktion zu vermeiden, indem sie jedes Bild-Textual content-Paar unabhängig auswertet. Dies führt zu genaueren Vorhersagen, ohne dass eine einzelne Klassenausgabe erzwungen wird.

Die in diesem Artikel gezeigten Medien sind nicht Eigentum von Analytics Vidhya und werden nach Ermessen des Autors verwendet.

Hallo! Ich bin David Maigari, ein dynamischer Profi mit einer Leidenschaft für technisches Schreiben, Webentwicklung und die KI-Welt. David ist auch ein Fanatic von Datenwissenschaft und KI-Innovationen.

Von admin

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert