1. 概述

这篇文章主要将介绍了一些在目标检测算法中的一些优化技巧,在优化过程中并不会修改网络,或者带来额外的计算量开销。文章的可以概括如下:
1)对于目标检测提出一种基于视觉相关的图像混合方法;
2)探究了详细的网络训练方法,包括损失函数、学习率、权重衰减以及多设备BN参数同步;
3)在单阶段与两阶段检测算法中检测提出技巧进行了对比。
使用文章中的方法进行优化,得到的优化见下图,至少提升了1个点。
目标检测调优技巧:《Bag of Freebies for Training Object Detection Neural Networks》论文笔记

2. 技巧

2.1 图像mix-up

原有的mix-up分布是a=0.2,b=0.2a=0.2,b=0.2β\beta分布,这样相加相当于是增加噪声,但是在目标检测中是不适宜的,其混合的结果见下图
目标检测调优技巧:《Bag of Freebies for Training Object Detection Neural Networks》论文笔记
这里从目标检测的自然相关性角度考量a>1,b>1a\gt 1,b\gt 1,且实验中这两个参数的取值为1.5是好于取1的时候的。使用这里提出的混合方法得到的混合结果见下图:
目标检测调优技巧:《Bag of Freebies for Training Object Detection Neural Networks》论文笔记
这是使用的分布曲线图,文中使用的是橙色的曲线。
目标检测调优技巧:《Bag of Freebies for Training Object Detection Neural Networks》论文笔记
在YOLO-v3上使用mix-up得到的性能表现详细见下表:
目标检测调优技巧:《Bag of Freebies for Training Object Detection Neural Networks》论文笔记

2.2 Classification Head Label Smoothing

在一般情况下Softmax的损失函数计算形式如下:
目标检测调优技巧:《Bag of Freebies for Training Object Detection Neural Networks》论文笔记
较为理想的情况是分类的正确结果趋近于1,而错误的分类结果趋近于0,但是Softmax函数是做不到这样的,所以论文中对其进行了平滑操作:
目标检测调优技巧:《Bag of Freebies for Training Object Detection Neural Networks》论文笔记
其中,KK是分类的数目。

2.3 修改学习率曲线

文中说使用余弦学习率变化曲线会取得比step较好的效果,下面是在YOLO-v3上进行实验得到的结果:
目标检测调优技巧:《Bag of Freebies for Training Object Detection Neural Networks》论文笔记

2.4 多GPU训练中BN参数同步

论文作者指出由于数据被划分到不同的GPU设备上,这些设备上的统计分布可能是不一样的,这样就会带来一些差异,因而在检测任务同步BN的参数。

2.5 输入图像随机尺度变化

在YOLO-v3中图像的输入尺度范围是$ 320, 352, 384, 416, 448, 480, 512, 544, 576, 608$,相当于是多尺度的训练,对增加对小目标的检测效果有一定作用。

3. 实验

在文章中对涉及到YOLO-v3与Faster R-CNN方法进行实验得到如下结果:
目标检测调优技巧:《Bag of Freebies for Training Object Detection Neural Networks》论文笔记
使用文章的方法运用到COCO数据集得到每个类别性能的变化情况:
目标检测调优技巧:《Bag of Freebies for Training Object Detection Neural Networks》论文笔记

相关文章:

  • 2021-04-17
  • 2021-10-05
  • 2021-06-12
  • 2021-12-05
  • 2021-09-14
  • 2021-05-07
  • 2021-12-11
猜你喜欢
  • 2021-04-30
  • 2021-11-05
  • 2021-10-23
  • 2021-06-10
  • 2021-08-29
相关资源
相似解决方案