Paper Reading - 基础系列 - Rethinking ImageNet Pre-training

论文链接

Kaiming He 大神不用多说

更多可见计算机视觉-Paper&Code - 知乎

Abstract

先总结一下论文的几点要点,果然大牛的论文都是清楚简单易懂,各种消融对比试验砸脸上

Paper Reading - 基础系列 - Rethinking ImageNet Pre-training_第1张图片

  1. 当训练任务对位置信息非常敏感时,比如分割、key-point,imagenet pretrained用处不大
  2. 数据集可用标注数据越多,预训练的作用越小
  3. 当使用更强大的数据增强方案时,预训练反而会损害模型的性能
  4. pretrain可以使结果更快收敛,但是数据量足够大情况下随机初始化后得到的结果一般不会差于pretrain,Normalization必不可少预训练不能给模型带来正则化的效果,BatchSize的情况下尝试GroupNorm
  5. 使用初始学习率(较大的学习率),训练更长的时间是有用的,长时间使用低学习率提高准确率经常会导致过拟,这也说明 ImageNet 预训练不能防止过拟合

Experiment

作者选用了以 Resnet 和 Resnext+FPN 为骨干网络的 Mask R-CNN 模型。归一化采用 SyncBN 和 GN

使用 Warm-up 初始率为 0.02, weight_decay=0.0001。使用 Momentum 优化器,每个 GPU 的 mini batch 为 2 张图片

  1. 分别使用 GN 和 SyncBN 进行试验,在更少的迭代次数上,ImagePretrain 的收敛十分迅速,且效果也不差。而对于从 0 开始训练的模型,则需要更多的迭代学习 ,Pretrain 的作用更多的是加速收敛
  2. 训练时图像增强,能从数据多样性上增强模型性能,其代价是更多的迭代次数才能收敛。在这个情况下,两个模型都取得了性能上的提升,而从头训练的模型效果更好
  3. Cascade 增加了两个额外的阶段,针对不同的 IOU 阈值进行检测。这将有助于检测的准确性。从实验数据也能看到,从头训练的模型效果更好一点
  4. 测试时数据增强,对测试集的图片,做了不同的增强。将不同增强后的图片送入模型,然后取个平均值,作为一种正则化手段。结合了三个方法的模型性能提升尤为明显
  5. 使用没有 BN/GN 的模型,更大模型,也是相同的结论
  6. 在数据量1k时候,从零训练的模型陷入了过拟合,预训练模型和从零开始训练的模型的 mAP 分别是82.777.6

 

你可能感兴趣的:(计算机视觉,python,人工智能,tensorflow,pytorch)