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 :
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
Instructions
- Veuillez utiliser la fonction «
processor
» pour prétraiter l'categories
et l'image à l'index «999
» dedataset
; 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
etcategories
.
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}")