Generalized Focal Loss

Generalized Focal Loss: Learning Qualified and Distributed Bounding Boxes for Dense Object Detection

https://arxiv.org/abs/2006.04388

Background

one-stage的目标检测任务一般将任务划分为两个方向:classification和localization,在网络训练过程中,这两个方向一般是独立进行优化的,如下图所示。

Generalized Focal Loss_第1张图片

图1 传统detection任务学习范式

其中,对于classification问题,考虑到目标检测任务中大量背景负样本到影响,一般选用Focal Loss来进行优化。而对于localization问题,一般都是将其作为一个Dirac delta分布问题,通过对GT的box的回归来优化。而最近FCOS提出引入一个定位质量评估的因子localizaiton quality(一般采用 IoU或centerness score),带来了很可观的性能提升。目前来说,这三者的组合便是目前目标检测任务的常用较优组合。

Issue

但是通过对该三者组合的训练范式的研究,作者发现其中存在两个问题:

  • classification与localizaiton quality评估在训练和测试阶段不连续。目前的dense detector工作中,一般都是在训练中对这两者独立进行,但是在测试的时候将他们综合考虑来进行候选框的筛选,这无疑对train和test两阶段带来了较大的gap。同时,目前的localizaiton quality评估一般都只针对正样本,而对于负样本的quality其实是不受监督的。因此在负样本的质量评估是一个不定行为,在预测阶段有可能会产生一个较高的质量评估,这就会导致造成一些不可预期的后果。如下图a 所示,在测试阶段,对于那些分类为背景(classification score较低),但其localizaiton quality评估较高的目标,两者相乘就会获得较大的分数,从而被误检。

Generalized Focal Loss_第2张图片

图2 cls score 与 IoU不连续所造成的误检

  • Bounding box的表示不够灵活(inflexible representation)。这其实是传统目标检测的一个通病,在复杂场景中,对于目标物体的边框位置的定义其实是无法精确给出的(包括标注人的主观倾向,或是遮挡,模糊等造成的边界歧义及不确定性)。如下图所示,水中的帆板边缘或被遮挡的大象边界,其实都很难去界定一个精确的位置。在这时候,传统的单一Dirac delta分布建模并不符合实际的情况。(对于irac delta分布回归,个人的理解为,传统的方法就是采用L1/L2等方法,向一个离散的确定值(bbox)进行逼近)。对于这种情况,回归一个分布范围相比于逼近一个离散值更符合事实。目前已经有一些工作在针对该问题进行改善,例如假定一个Guassian分布来进行预测等,但现实中的边界分布问题必然是要比简单的高斯模型更加复杂的,同时也可能是不对称的,因此这种假定分布模型的方法也并不是最好的解决方案。

Generalized Focal Loss_第3张图片

图3 检测框边界分布问题

Motivation and Novelty

针对以上两个问题,文中分别提出了解决方案:

  1. 对于classification score和localization quality在训练和测试阶段不连续的问题,文中选择将这两者结合为统一的一项,从而在训练和测试阶段都能够采用同样的表达。

  2. 对于bbox的边界分布问题,文中选择直接通过回归一个任意分布的方式来解决(而不是预定Gaussian分布等)。采用离散化的方式,通过对多个目标采用softmax来组合的方式预测一个随机分布。

Method

为了实现以上两种方案,文中提出了提出了两个新的损失函数,QFL(Quanlity Focal Loss)和DFL(Distribution Focal Loss),两者结合统称为本文所说的 Generalized Focal Loss。以下分别来看这两种loss.

  • QFL: 将localization quality和Focal loss结合,采用localization quality(例如使用IoU)来作为正样本的label表示。但是传统的Focal loss支持的是one-hot的离散形式类别表示,而IoU给出的却是一个小数。为了将离散情况的优化问题扩展到连续域,文中就提出了QFl,如下所示。这里依然保持了Focal loss的特性,将调节因子转为了预测与质量label的距离,这样对于一些预估不准且偏离标签的hard example, 会赋予更多的关注,从而更好地训练。如图2所示,QFL的加入,强迫classification score和 location quality两者有了更高的相关性,从而避免了之前那种高质量错误类别检测的出现。

  • DFL: 对于对任意分布回归的建模问题,文中没有采用类似于GIoU Loss这样的损失函数,因为发现过于随机的分布建模并不利于学习。文中认为真实分布一般不会距离标注的位置太远,因此设计了DFL,如下所示。它的本质就是放大标签位置y附近的概率。在实际工程中 ,采用了多个离散回归再经过softmax组合的方式来实现。从图3来块,DFL能够使得边缘分布的预测,在清晰的边界位置区域尖锐,而在较模糊的位置处预测出较平缓的分布。

Experiments

Generalized Focal Loss_第4张图片

实验结果当然是非常的优秀,给一张主要的对比图,可以看到还是能够非常稳定的涨点,同时在速度上也是非常亮眼。对于QFL和DFL两种loss,消融实验证明了两者的有效性,可以学习在自己的工程中使用。

Thoughts

可以说这是非常亮眼的一篇文章,从现有技术的分析入手,发现问题然后提出解决方案,最后实现可预期的提升,有理有据令人叹服。。。可以遇见GFL可能会在未来的工程中被较为广泛的使用

你可能感兴趣的:(paper阅读,深度学习,机器学习,神经网络,计算机视觉)