Get startedGet started for free

CV fine-tuning: model classes

In this exercise, you will load the pretrained model, and adapt the output to accommodate a new classification of car model types from the Stanford Cars dataset instead of the 1000 classes used for the original ImageNet training. The dataset contains labelled images of cars.

The dataset has been loaded (dataset), as has AutoModelForImageClassification from transformers. The dataset has been filtered so that three model types are included.

This exercise is part of the course

Multi-Modal Models with Hugging Face

View Course

Exercise instructions

  • Obtain the new label names from the dataset
  • Add the new id2label mapping while loading the model.
  • Add the corresponding label2id mapping.
  • Add the required flag to change the number of classes.

Hands-on interactive exercise

Have a go at this exercise by completing this sample 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=____
)
Edit and Run Code