Focal Loss 函数用于密集对象检测

为了达到这个目的,我们把训练阶段的类别不平衡性视为一阶目标检测系统精度的瓶颈,并提出了了解决这个瓶颈的全新的损失函数。在此基础上,我们设计了一个名为RetinaNet的一阶目标检测模型。

Focal Loss

2.1 Cross entropy

  二分类问题中loss的定义如下:

640?wx_fmt=png&wxfrom=5&wx_lazy=1

  上式中640?wx_fmt=png&wxfrom=5&wx_lazy=1代表样本属于1的概率。y代表标签。为了表示方便,我们定义640?wx_fmt=png&wxfrom=5&wx_lazy=1如下:

640?wx_fmt=png&wxfrom=5&wx_lazy=1

  CE loss 如下图中的蓝色曲线所示,这个loss的一个显著特征是,即使是很容易的分类情况下,也会产生较大的loss。当把这些大量的loss加起来的时候,将会产生较大的影响。

Focal Loss 函数用于密集对象检测_第1张图片


2.2 Balanced Cross Entropy

  常用的解决类别不平衡的方法是引入一个额外的参数0?wx_fmt=png0?wx_fmt=png用来设置为相反类别的概率或者作为交叉验证的一个超参数。为了表示方便,我们重写了带0?wx_fmt=png参数的CE loss:

0?wx_fmt=png


2.3 Focal Loss Definition

  正如实验所示,在密集目标检测系统中,训练过程中,遇到的类别失衡将会对交叉熵损失函数产生较大影响。容易分类的负样本将会占据主要的损失以及梯度。尽管0?wx_fmt=png平衡了正负样本的重要性,但是无法对 容易分类的样本和难以分类的样本产生影响。因此我们提出了一种全新的loss function(focal loss),以此来降低 容易分类样本的重要性,从而把训练集中在难以分类的负样本上。 Focal loss 的形式如下:

0?wx_fmt=png

  Focal loss 在 cross entropy 的基础上增加了一个调节因子,0?wx_fmt=png。Focal loss 如下图所示,0?wx_fmt=png的取值在[0, 5] 之间。从图中我们可以看出两点:

  • 当一个样本被错分类,0?wx_fmt=png值很小的时候,调节因子,0?wx_fmt=png的值很小,因此不会对loss产生影响。当0?wx_fmt=png值很大,趋近于1的时候,调节因子的值趋近于0,因此对于正确分类的样本的loss值被缩小了。

  • 0?wx_fmt=png的时候,FL 等于 CE。当0?wx_fmt=png增加时候,调节因子的影响相应的增加,实验中0?wx_fmt=png取得了最好的实验效果。

  在实验中,我们使用了0?wx_fmt=png变种的focal loss ,形式如下:

0?wx_fmt=png

RetinaNet Detector

  为了验证使用的Focal Loss function,作者设计了一种RetinaNet,如下图所示:

Focal Loss 函数用于密集对象检测_第2张图片

  RetinaNet 网络架构包含一个backbone 网络和两个subnetwork。Backbone网络在底层使用了ResNet,用来生成卷机特征,在此之上有一个Feature Pyramid Network(FPN)。Backbone外接两个subnetwork,一个用来分类,一个用来生成目标位置信息。

实验验证

  我们在COCO数据集上进行了目标检测的实验,并将测试结果与近期最先进的方法进行比较。其中包括一阶模型和二阶模型。下表列出了测试结果:

Focal Loss 函数用于密集对象检测_第3张图片

  这是Retina-101-800模型的测试结果,训练过程中采用scale filter , 训练时间是之前模型的1.5倍,但是AP值提升了1.3。对比当前最先进的一阶模型,我们的模型AP值提升了5.9%(39.1 vs 33.2)。对比当前最先进的二阶模型,Faster R-CNN w TDM,我们的模型也取得了2.3%的优势(39.1 vs 36.8)。

----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------


你可能感兴趣的:(Focal Loss 函数用于密集对象检测)