Бекбон попередньо натренованої моделі
Час зібрати архітектуру R-CNN! Ви використаєте бекбон попередньо натренованої моделі vgg16 для виділення ознак. Також не забудьте зберегти форму виходу бекбона — вона слугуватиме формою входу для наступних блоків: класифікатора та регресора рамок.
torch, torchvision, torch.nn як nn вже імпортовано.
Модель імпортовано як vgg16, а ваги збережено у VGG16_Weights.
Ця вправа є частиною курсу
Глибоке навчання для зображень із PyTorch
Інструкції до вправи
- Завантажте попередньо натреновані ваги VGG16.
- Видобудьте
in_featuresз першого шаруclassifier, використовуючи.children()як послідовний блок, і збережіть це якinput_dim. - Створіть бекбон як послідовний блок, використовуючи
featuresі.children(). - Виведіть модель бекбона.
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# 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
____