训练深度目标检测模型的免费 tricks


前言

本文是对 2019 年 2 月 Amazon 的研究团队发表的一篇关于目标检测模型训练的 trick 的简单总结,作者很机智的用两个模型来做实验,Faster RCNN 和 YOLO v3,用来显示他们的方法对于 two-stage 和 one-stage 的算法都适用?

标题:Bag of Freebies for Training Object Detection Neural Networks

作者:{zhiz, htong, hzaws, zhongyue, junyuanx, mli}@amazon.com

论文:https://arxiv.org/pdf/1902.04103.pdf

代码:https://github.com/dmlc/gluon-cv


Introduction

文章标题是 “Bag of Freebies”,一麻袋免费的赠品,一语双关,1. 文中用到这些 tricks 可以提高主流目标检测网络的性能,同时维持原本的计算成本;2. 独乐了不如众乐乐,免费分享给大家。

首先提出了一种 用于多目标检测任务的视觉相干图像混合方法(visually coherent image mixup methods for object detection tasks).

然后, 讨论了训练过程的许多 details,包括

  • 分类头标签平滑(Classification Head Label Smoothing)
  • 数据预处理(Data Preprocessing)
  • 训练策略改进(Training Schedule Revamping)
  • 同步 Batch Normalization (Synchronized Batch Normalization)
  • 用于 single-stage 网络的随机 shape 训练

文中总结的主要贡献如下:

  • 评估了应用于不同目标检测网络的启发式训练规则, 为未来的研究提供了有价值的实践指导(guidelines)
  • 目标检测网络的视觉相干图像混合方法用于训练, 并证明该方法对于提高模型泛化能力具有有效性
  • 扩展目标检测数据增强的深入研究,提高泛化,减少过拟合
  • 不改变模型网络结构和损失函数(即不会改变计算成本),实现了 5% 精度提高

Related Work

Scattering tricks from Image Classification

一系列试图解决深度神经网络的脆弱性的方法:

  • Inception v3 介绍了标签平滑性(Label smoothing),对交叉熵损失中的难真实标签(hard ground truth labeling)进行了改进
  • Zhang 等人提出了 mixup 方法来缓解网络中的对抗性扰动
  • Sgdr 提出了学习率衰减的余弦退火策略(Cosine annealing strategy),对比传统步长策略
  • He Tao 等通过大量的 tricks, 在图像分类精度上取得了显著的提高 (Bag of tricks for image classification).

Deep Object Detection Pipelines

两种,one-stage,如 SSD, YOLO及其升级版,two-stage,如 R-CNN及其升级版.


Bag of Freebies

Visually Coherent Image Mixup for Object Detection

mixup 已被证明在减轻分类网络中的对抗性扰动方面是成功的mixup: BEYOND EMPIRICAL RISK MINIMIZATIONFigure 2 中示出了图像分类中的 mixup 的示例

Image credits: https://arxiv.org/pdf/1902.04103.pdf

在目标检测的实验中, 当作者持续增加 mixup 中的混合比(blending ratio)时, 得到的图像中的目标物体更加有活力和连贯的自然表现, 像是在低帧率电影中的过渡帧

特别的, 作者使用几何保留对齐的图像融合, 以避免扭曲的图像,同时选择了一个更具视觉一致性的 β 分布(α≥1, β≥1),Figure 3 中显示了目标检测中的 mixup 示例。

Image credits: https://arxiv.org/pdf/1902.04103.pdf


Classification Head Label Smoothing

标签平滑化(Label smoothing) 是由 [Inception v3] 中提出的一种正则化形式.

Incption v3. Rethinking the Inception Architecture for Computer Vision.


Data Preprocessing

图像分类网络对图片几何变换具有极强的容忍度,鼓励这样做来提高模型的泛化精度。但是, 对于目标检测任务的图像预处理来说, 由于检测网络对于这种转换更加敏感, 因此我们需要格外的谨慎,文中用到了以下数据增强的方法:

  • 随机几何变换,包括随机剪裁,随机扩展(random expansion),随机水平翻转,随机缩放

  • 随机颜色抖动(Random color jittering),包括亮度,色调,饱和度,对比度

对于 one-stage 检测网络,其最后的输出结果是从特征图谱上的每一个像素点生成的. 而 multi-stage 检测网络, 如 Fast-RCNN 等, 它的检测结果是通过在特征图谱上进行滑动窗口式的遍历生成的 proposals 进行回归和分类得到的,基于该采样的方法在特征图上进行了大量的的裁剪操作,因此这些网络不需要在训练阶段应用广泛的几何增强


Training Scheduler Revamping

在传统的学习率 step schedule 中, 在达到预定的时间或者迭代次数后,学习率乘以一个小于 1 的常数。在很多网络训练均采用 step schedule 的方法来调整学习率。**Step schedule 的方法学习率转换过于突然(sharp)。**因此有改进的方法如下:

  • Loshchilov 提出了一种更平滑的余弦学习率调整策略(cosine learning rate adjustment)。 cosine schedule 根据 0 到 pi 的余弦值来缩放学习率。 开始慢慢降低大的学习率,中途快速降低学习速度,最后以微小的斜率降低小学习率直至 0。
  • Warm up learning rate 是另一种常见的策略,它防止初始训练迭代过程中梯度爆炸的发生。

Synchronized Batch Normalization

Peng 等通过 MegDet: A large mini-batch object detector. 证明了 Synchronized Batch Norm 在目标检测中的重要性。


Random shapes training for single-stage object detection networks

很多 one-stage 目标检测网络采用固定的 shape 进行训练。为了降低过拟合的风险, 同时提高模型的泛化能力,文中采用随机尺度训练的方法(如 YOLOv3 中的多尺度训练)


Experiments

On Pascal VOC

Image credits: https://arxiv.org/pdf/1902.04103.pdf


On MS COCO

Image credits: https://arxiv.org/pdf/1902.04103.pdf

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值