When I fine tune a pretrained resnet152 model, I seem to lose all the named layers I’d like access to. I’ve include the simple fine tuned model, and the named layers of both pretrained and fine tuned. TIA.
class ConvNet3(nn.Module):
def __init__(self): super().__init__() model = models.resnet152(pretrained=True) model.fc = nn.Linear(2048, 10) self.model = model def forward(self, x): return self.model(x) # [batch_size, 10]
The named layer printouts as follows:
import torchvision.models as models
model = ConvNet3().eval()
print([n for n, _ in model.named_children()])model = models.resnet152(pretrained=True).eval()
print([n for n, _ in model.named_children()])
Output from above print statements
[‘model’]
[‘conv1’, ‘bn1’, ‘relu’, ‘maxpool’, ‘layer1’, ‘layer2’, ‘layer3’, ‘layer4’, ‘avgpool’, ‘fc’]