Zero-Shot-Lernen mit CLIP
Du wirst Zero-Shot-Learning nutzen, um ein Bild aus dem Datensatz „ rajuptvs/ecommerce_products_clip “ zu klassifizieren, der etwa 2.000 Bilder von Produkten mit den dazugehörigen Beschreibungen enthält:

Der Datensatz (dataset), CLIPProcessor (processor) und CLIPModel (model) wurden für dich geladen, zusammen mit einer Liste von Kategorien:
categories = ["shirt", "trousers", "shoes", "dress", "hat",
"bag", "watch", "glasses", "jacket", "belt"]
Diese Übung ist Teil des Kurses
Multimodale Modelle mit Hugging Face
Anleitung zur Übung
- Verwende „
processor“, um „categories“ und das Bild unter dem Index „999“ von „dataset“ vorzubereiten; aktiviere „padding“. - Gib die entpackte Datei „
inputs“ in den Ordner „model“ rein. - Berechne die Wahrscheinlichkeiten für jede Kategorie mit dem Attribut „
.logits_per_image“ und der Methode „.softmax()“. - Such die passende Kategorie über „
probs“ und „categories“.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Preprocess the categories and image
inputs = ____(text=____, images=____, return_tensors="pt", padding=____)
# Process the unpacked inputs with the model
outputs = ____
# Calculate the probabilities of each category
probs = outputs.____.____(dim=1)
# Find the most likely category
category = categories[probs.____.item()]
print(f"Predicted category: {category}")