CommencerCommencer gratuitement

Ajustement du CV : classes de modèles

Dans cet exercice, vous allez charger le modèle pré-entraîné et adapter la sortie afin qu'elle puisse prendre en charge une nouvelle classification des types de modèles de voitures issue du jeu de données Stanford Cars, au lieu des 1 000 classes utilisées pour l'entraînement ImageNet d'origine. L'ensemble de données contient des images étiquetées de voitures.

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

Cet exercice fait partie du cours

Modèles multimodaux avec Hugging Face

Afficher le cours

Instructions

  • Obtenir les nouveaux noms d'étiquettes à partir de l'ensemble de données
  • Ajoutez le nouveau mappage d'id2label s lors du chargement du modèle.
  • Ajoutez le mappage d'label2id s correspondant.
  • Veuillez ajouter l'indicateur requis pour modifier le nombre de classes.

Exercice interactif pratique

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

# 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