在我们的ReID任务中,我们采用50层的深度残差网络ResNet-50作为基线网络,并且在使用ResNet-50的时候需要做一个finetune迁移学习。finetune是一种重要的迁移学习方式,即通过微调,不用对模型的各个参数进行重新训练。finetune一般都是基于一个大数据集预训练下的网络,对于一个数据量不是很大的深度学习任务,finetune也可以比避免因模型复杂而数据不够造成的过拟合学习。
在我们的ReID任务中,我们的finetune的是一个ResNet-50网络,它最初是基于一个大数据集的初始训练。PyTorch的模型库中初始训练的ResNet-50的示意图如图。
模型需要finetune的是特征图谱和最终全连接层的分类标签。实验中,我们基于PyTorch,在模型库里面可以加载预训练网络,如下:
from torchvision import models #torchvision库中的models包含了一些常用网络模型以及训练好的参数
model_ft = models.resnet50(pretrained=True)
————————————————
原文链接:https://blog.csdn.net/wlx19970505/article/details/101119300