一.背景问题
目前在数据集ImageNet上预训练现成网络,再进行微调,存在的问题:
1)分类和检测任务对目标位置有不同程度的敏感度,导致最终学习目标产生偏差;
2) 该体系结构受分类网络的限制,给修改带来不便。
为了解决这些问题,从零开始训练探测器是一个可行的解决方案。
通过大量的实验和对下采样因子的分析,提出了一种充分利用原始图像信息的root-ResNet骨干网。
我们的ScratchDet在所有从头开始的训练检测器中,在PASCAL VOC 2007、2012和MS COCO上都达到了最先进的精度,甚至比几种一级预处理方法性能更好。
代码:https://github.com/kimsoyone/ScratchDet。
二.论文解决
因此,要想从零开始利用训练检测器,需要实现两个方面的改进:
(1)在保证训练收敛性的同时,不受任何类型网络的体系结构限制;
(2)使训练检测器的性能与预训练网络一样好(甚至更好)。
本文的主要贡献概括如下:
(1) 我们提出了一种从零开始训练的单阶段目标检测器ScratchDet,它集成了BatchNorm以帮助检测器从零开始很好地收敛,独立于网络类型。
(2)提出了一种新的root-ResNet骨干网,显著提高了检测精度,特别是对小目标的检测。
(3) ScratchDet的性能优于最先进的从头开始的训练检测器和一些基于预训练的检测器。
三.ScratchDet
1.BatchNorm
注:前面笔记介绍YOLO v2时,已详细介绍BatchNorm,联接笔记三,YOLO v2
在检测头子网添加BN模块,大幅度优化性能。
2.Backbone Network
网络:(a) ResNet-18:原始结构。(b) ResNet-18-A:删除第一个最大池层。(c) ResNet-18-B:将第一个conv层的步幅大小从2更改为1。(d) Root-ResNet-18:将ResNet-18-B中的7×7conv层替换为3×3conv层,PASCAL 2007测试(从头开始的“07+12”训练)的对应图分别为73.1%、75.3%、77.6%和78.5%。值得注意的是,无论我们如何修改结构,我们选择的检测层的空间大小与SSD300和DSOD300相同(即38×38、19×19、10×10、5×5、3×3、1×1)。
三.实验结果