Zero-shot навчання з CLIP
Ви застосуєте zero-shot навчання, щоб класифікувати зображення з набору даних rajuptvs/ecommerce_products_clip, який містить близько 2 тис. зображень товарів із відповідними описами:

Для вас уже завантажено набір даних (dataset), CLIPProcessor (processor) і CLIPModel (model), а також список категорій:
categories = ["shirt", "trousers", "shoes", "dress", "hat",
"bag", "watch", "glasses", "jacket", "belt"]
Ця вправа є частиною курсу
Багатомодальні моделі з Hugging Face
Інструкції до вправи
- Використайте
processor, щоб попередньо обробитиcategoriesта зображення з індексом999уdataset; увімкніть додавання заповнення (padding). - Передайте розпаковані
inputsуmodel. - Обчисліть ймовірності для кожної категорії, використовуючи атрибут
.logits_per_imageта метод.softmax(). - Знайдіть найімовірнішу категорію, використавши
probsіcategories.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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}")