Pytorch修改ResNet模型全连接层进行直接训练实例
之前在用预训练的ResNet的模型进行迁移训练时,是固定除最后一层的前面层权重,然后把全连接层输出改为自己需要的数目,进行最后一层的训练,那么现在假如想要只是把
最后一层的输出改一下,不需要加载前面层的权重,方法如下:
model = torchvision.models.resnet18(pretrained=False) num_fc_ftr = model.fc.in_features model.fc = torch.nn.Linear(num_fc_ftr, 224) model = nn.DataParallel(model, device_ids=config.gpus).to(device)
首先模型结构是必须要传入的,然后把最后一层的输出改为自己所需的数目
以上知识点很简单,大家可以测试下,感谢大家的阅读和对【听图阁-专注于Python设计】的支持。