Focal loss 和 GHM

Focal Loss for Dense Object Detection 是ICCV2017的Best student paper,文章思路很简单但非常具有开拓性意义,效果也非常令人称赞。

GHM(gradient harmonizing mechanism) 发表于 “Gradient Harmonized Single-stage Detector",AAAI2019,是基于Focal loss的改进,也是个人推荐的一篇深度学习必读文章。

1、Focal Loss

Focal Loss的引入主要是为了解决难易样本数量不平衡(注意,区别于正负样本数量不平衡)的问题,实际可以使用的范围非常广泛,为了方便解释,还是拿目标检测的应用场景来说明:

单阶段的目标检测器通常会产生高达100k的候选目标,只有极少数是正样本,正负样本数量非常不平衡。我们在计算分类的时候常用的损失——交叉熵的公式如下:

为了解决正负样本不平衡的问题,我们通常会在交叉熵损失的前面加上一个参数,其实之前在上色项目的处理中,我们有通过计算不同类别的像素数目,然后基于像素数对不同类别赋予不同的权重,即:

尽管权重系数平衡了正负样本,但对难易样本的不平衡没有任何帮助。而实际上,目标检测中大量的候选目标都是易分样本。由于数量极不平衡,易分样本的数量相对来讲太多,最终主导了总的损失。而本文的作者认为,易分样本(即,置信度高的样本)对模型的提升效果非常小,模型应该主要关注与那些难分样本(这个假设是有问题的,是GHM的主要改进对象)

这时候,Focal Loss就上场了!

一个简单的思想:把高置信度§样本的损失再降低一些不就好了吗!

这样以来,训练过程关注对象的排序为正难>负难>正易>负易。

2、GHM

那么,Focal Loss存在什么问题呢?
首先,让模型过多关注那些特别难分的样本肯定是存在问题的,样本中有离群点(outliers),可能模型已经收敛了但是这些离群点还是会被判断错误,让模型去关注这样的样本,怎么可能是最好的呢?这个思想倒是类似于RANSAC对最小二乘的改进。
其次, 两个权重系数的取值全凭实验得出,且权重afa 和 权重gama要联合起来一起实验才行。

GHM(gradient harmonizing mechanism) 解决了上述两个问题。

说白了就是在概率梯度的两端,较为难分的样本和较为易分的样本会集中;这个时候以梯度的倒数作为惩罚系数,可以很好的平衡计算样本带来的负面效应。

因此作者引入梯度密度的概念,并在此基础上使用梯度系数的倒数作为惩罚权重,使得模型更为关注中间区域的易分对象,对极端容易分辨的和极端难以分辨的予以忽视。

猜你喜欢

转载自blog.csdn.net/NCU_wander/article/details/120728248