CommencerCommencer gratuitement

Apprentissage sans données d'entraînement avec CLIP

Vous utiliserez l'apprentissage sans supervision (zero-shot learning) pour classer une image issue du jeu de données rajuptvs/ecommerce_products_clip, qui contient environ 2 000 images de produits accompagnées de descriptions associées :

Image d'une femme présentant une robe

L'ensemble de données (dataset), CLIPProcessor (processor) et CLIPModel (model) ont été chargés pour vous, ainsi qu'une liste de catégories :

categories = ["shirt", "trousers", "shoes", "dress", "hat", 
              "bag", "watch", "glasses", "jacket", "belt"]

Cet exercice fait partie du cours

Modèles multimodaux avec Hugging Face

Afficher le cours

Instructions

  • Veuillez utiliser la fonction « processor » pour prétraiter l'categories et l'image à l'index « 999 » de dataset; veuillez activer le remplissage.
  • Veuillez transmettre le fichier décompressé « inputs » dans le répertoire « model ».
  • Calculez les probabilités de chaque catégorie à l'aide de l'attribut « .logits_per_image » et de la méthode « .softmax() ».
  • Veuillez trouver la catégorie la plus appropriée à l'aide des sites probs et categories.

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

# 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}")
Modifier et exécuter le code