CommencezCommencez gratuitement

Ajustement fin en CV : classes de modèles

Dans cet exercice, vous allez charger le modèle préentraîné et adapter sa sortie pour intégrer une nouvelle classification de types de modèles de voitures provenant du jeu de données Stanford Cars, au lieu des 1000 classes utilisées pour l'entraînement initial sur ImageNet. Le jeu de données contient des images d'autos avec étiquettes.

Le jeu de données a été chargé (dataset), tout comme AutoModelForImageClassification de transformers. Le jeu a été filtré afin d'inclure trois types de modèles.

Cette activité fait partie du cours

Modèles multimodaux avec Hugging Face

Voir le cours

Instructions de l’exercice

  • Obtenez les nouveaux noms d'étiquettes à partir du jeu de données.
  • Ajoutez la nouvelle correspondance id2label lors du chargement du modèle.
  • Ajoutez la correspondance label2id correspondante.
  • Ajoutez l'indicateur requis pour changer le nombre de classes.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

# Obtain the new label names from the dataset
labels = dataset["train"].features["____"].____

label2id, id2label = dict(), dict()
for i, label in enumerate(labels):
    label2id[label] = str(i)
    id2label[str(i)] = label

model = AutoModelForImageClassification.from_pretrained(
    "google/mobilenet_v2_1.0_224",
    num_labels=len(labels),
    # Add the id2label mapping
    id2label=____,
    # Add the corresponding label2id mapping
    label2id=____,
    # Add the required flag to change the number of classes
    ignore_mismatched_sizes=____
)
Modifier et exécuter le code