Zacznij terazZacznij za darmo

Dostrajanie CV: klasy modelu

W tym ćwiczeniu wczytasz wstępnie wytrenowany model i dostosujesz jego wyjście do nowej klasyfikacji typów modeli samochodów ze zbioru danych Stanford Cars – zamiast 1000 klas używanych podczas oryginalnego trenowania na ImageNet. Zbiór danych zawiera otagowane obrazy samochodów.

Zbiór danych został wczytany (dataset), podobnie jak AutoModelForImageClassification z biblioteki transformers. Zbiór danych został przefiltrowany tak, aby uwzględniał trzy typy modeli.

To ćwiczenie jest częścią kursu

Modele multimodalne z Hugging Face

Zobacz kurs

Instrukcje do ćwiczenia

  • Pobierz nowe nazwy etykiet ze zbioru danych.
  • Dodaj nowe mapowanie id2label podczas wczytywania modelu.
  • Dodaj odpowiadające mu mapowanie label2id.
  • Dodaj wymagany parametr, aby zmienić liczbę klas.

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

# 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=____
)
Edytuj i uruchom kod