Zacznij terazZacznij za darmo

Szkielet wstępnie wytrenowanego modelu

Czas zbudować architekturę R-CNN! Wykorzystasz szkielet (backbone) wstępnie wytrenowanego modelu vgg16 do ekstrakcji cech. Pamiętaj też, aby zapisać kształt wyjściowy szkieletu – posłuży on jako kształt wejściowy dla kolejnych bloków: klasyfikatora i regresoratu ramki.

Zaimportowano: torch, torchvision, torch.nn jako nn. Model został zaimportowany jako vgg16, a wagi są przechowywane w VGG16_Weights.

To ćwiczenie jest częścią kursu

Głębokie uczenie dla obrazów z PyTorch

Zobacz kurs

Instrukcje do ćwiczenia

  • Wczytaj wstępnie wytrenowane wagi VGG16.
  • Wyodrębnij in_features z pierwszej warstwy classifier, używając .children() jako bloku sekwencyjnego, i zapisz wynik jako input_dim.
  • Utwórz szkielet (backbone) jako blok sekwencyjny, korzystając z features i .children().
  • Wyświetl model szkieletu.

Interaktywne ćwiczenie praktyczne

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

# Load pretrained weights
vgg_model = vgg16(weights=____)

# Extract the input dimension
input_dim = nn.Sequential(*list(vgg_model.classifier.____()))[0].____

# Create a backbone with convolutional layers
backbone = nn.Sequential(*list(____))

# Print the backbone model
____
Edytuj i uruchom kod