Aan de slagGa gratis aan de slag

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.

Deze oefening maakt deel uit van de cursus

Multi-Modal Models with Hugging Face

Cursus bekijken

Oefeninstructies

  • 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.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# 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=____
)
Code bewerken en uitvoeren