论文:Rethinking ImageNet Pre-training
论文链接:https://arxiv.org/abs/1811.08883
Kaiming He这篇文章以计算机视觉中的目标检测、实例分割和人体关键点检测领域为例,思考预训练模型是否真的那么重要,最后基于实验结果得出结论:基于随机初始化的网络参数(train from scratch)训练模型的效果并不比基于ImageNet数据集的预训练模型效果差。具体而言主要有以下几个发现:
1、采用基于ImageNet的预训练模型参数可以加快模型的收敛速度,尤其是在训练初期,而基于随机初始化网络结构参数训练模型时在采用合适的归一化方式且迭代足够多的次数后也能够达到相同的效果,可以参考Figure1的结果。在Figure1中作者以训练Mask-RCNN算法为例,采用组归一化(group normalization,缩写为GN,参考博客:Group Normalization算法笔记)训练不同参数初始化的网络并对比效果,可以看出模型在训练初期的收敛速度存在较大差异,但是在训练迭代次数足够多时,随机初始化网络结构参数能够达到采用预训练模型参数相同的效果。
这里要强调一下选择合适的归一化算法对从头开始训练检测算法的重要性,忽略归一化方式的选择容易产生目标检测算法难以在随机初始化网络结构参数的情况下训练的错觉。目前BN(batch normalization)是图像分类算法中最常用的归一化层,当在目标检测任务中使用基于ImageNet的预训练模型,因为相比之下目标检测任务的输入图像更大、网络结构更加复杂等原因,因此目标检测任务的batch size参数比图像分类任务要小(尤其是Faster RCNN这种two stage类型的检测算法),而BN层的计算在batch si