
摘要
预训练是计算机视觉领域的主流范式。例如,监督式ImageNet预训练常被用于初始化目标检测与分割模型的主干网络。然而,He等人发现,ImageNet预训练对COCO目标检测任务的影响十分有限。在此背景下,我们探索了自训练(self-training)作为一种利用额外数据的替代方法,并将其与ImageNet预训练进行对比。我们的研究揭示了自训练具有出色的通用性与灵活性,并得出三个重要发现:(1)更强的数据增强策略与更多标注数据会进一步削弱预训练的价值;(2)与预训练不同,自训练在采用更强数据增强时,在低数据与高数据场景下始终能带来性能提升;(3)当预训练确实有效时,自训练仍能进一步超越预训练的效果。以COCO目标检测数据集为例,当仅使用五分之一的标注数据时,预训练能带来一定收益;但当使用全部标注数据时,预训练反而会降低模型精度。相比之下,自训练在所有数据规模下均实现了+1.3至+3.4 AP的显著提升。换言之,自训练在预训练失效的场景下——即利用ImageNet数据辅助COCO任务时——表现尤为出色。在更为小型的PASCAL分割数据集上,尽管预训练仍能带来显著提升,但自训练仍能进一步超越预训练模型的性能。在COCO目标检测任务中,我们取得了54.3 AP的成绩,相比当前最强的SpineNet模型提升了+1.5 AP;在PASCAL分割任务中,我们达到了90.5 mIOU,较此前最先进的DeepLabv3+模型提升了+1.5% mIOU。
代码仓库
基准测试
| 基准 | 方法 | 指标 |
|---|---|---|
| object-detection-on-coco | SpineNet-190 (1280, with Self-training on OpenImages, single-scale) | Hardware Burden: Operations per network pass: box mAP: 54.3 |
| object-detection-on-coco-minival | SpineNet-190 (1280, with Self-training on OpenImages, single-scale) | box AP: 54.2 |
| semantic-segmentation-on-pascal-voc-2012-val | EfficientNet-L2+NAS-FPN (single scale test, with self-training) | mIoU: 90.0% |