Focal-Loss and RetinaNet 论文理解 [author: linkrain]

Focal Loss and Retina Net 论文理解 [author: linkrain]

远古论文回顾之二。
论文名称:Focal Loss for Dense Object Detection
论文链接:https://arxiv.org/pdf/1708.02002.pdf

0. 密集采样

在 2-stage 方法中,首先用 region-proposal-network 以一个接近 1 的 recall 将潜在的目标框提取出来,在这一步中过滤了绝大多数不存在目标的区域采样;然后在这些已提取的目标框上进行类别分类和位置回归。这种思想可以认为是一种问题拆分策略,也可以认为是一种逼近思想。

而在 1-stage-anchor-based 方法中,由于算法只对图像进行一次推断,所以算法就必须在各种尺度上对图像的所有区域进行扫描式的推断,将图像中的所有区域都看作可能的目标区域,并在每个区域上进行各种尺度和各种宽高比的富采样,以适应目标的位置不确定性、尺度不确定性、比例不确定性。

可以预见,这种富采样的方式会产生大量的冗余采样被分配为负样本,造成网络训练时目标采样与背景采样数量相当不平衡,导致大量的背景采样产生的 loss 贡献远大于少量的目标采样,即使在经过一些训练使得每个背景采样的 loss 值已经降到比较低之后,数量上的优势仍然导致背景采样主导了 loss,或者说占据了不该有的优化优先度。

并且从直观一些的角度来考虑,网络在前期的训练中由于大量样本都是背景样本,的确达到了比较容易识别出背景样本的效果,但这个结果可能并不能说明网络得到了有效的训练,试想,如果网络没有任何理由地单纯把大部分采样都识别为背景样本,在背景识别上也能得到比较高的准确性。

1. Focal Loss

在 SSD 中,算法通过在每个 step 训练的时候只使用部分背景采样计算 loss 来控制网络的平衡训练;另外也有使用不同的权重因数来控制不同类别之间的 loss 权重的方法。这些方法在论文中都有提到,一般而言,这些方法是在训练之前就确定了一些超参,比如 SSD 中的纳入loss的背景采样数量与目标采样数量的比例,再比如之前一些 loss 中的类别平衡权重……这样没法将网络训练中产生的动态变化纳入考量,例如某些类别训练得就是比其它类别快,这样的情况下它的 loss 权重或者说优化优先级仍然是初始值,这就不合理。Focal Loss 论文中简单地提了一下,其不仅仅考虑了正负样本之间的不平衡,还能在训练中动态地考虑到难易样本间的优化优先级平衡。具体的做法就是通过各类的推断概率输出反馈得到一个 loss 权重,使得这个 loss 权重与各类的易分度成反比。具体公式如下:
F L ( p t ) = − ( 1 − p t ) γ l o g ( p t ) FL(p_t) = -(1-p_t)^\gamma log(p_t) FL(pt)=(1pt)γlog(pt)
p t = { p y = 1 1 − p o t h e r w i s e . p_t=\begin{cases}p&y=1\\1-p&otherwise.\end{cases} pt={ p1py=1otherwise.
这是最初的Focal-Loss形式。 γ \gamma γ 是一个恒正的参数,论文中给出了它在不同取值下以及不同推断概率下对于loss的衰减程度的函数图像:

可以看到 γ \gamma γ 越大在对于正确类别的特定推断概率上对于 loss 的衰减程度越大,这种衰减在错误预测时是较低的,在预测较为正确时衰减较大,但也能看出,相对于途中标记的正确类别预测值大于 0.6 的区域中的 loss 衰减,其实在预测值大约为 0.15 到 0.6 之间的区域上衰减程度更大,这里暂且先提出一个问题,并不做假设性的回答:是否将衰减限制在更窄的范围内会有更好的效果?
先盘一下这个最初的 Focal Loss 形式是如何动态降低易分样本的损失权重的:
首先,容易看出, γ = 0 \gamma=0 γ=0 的时候,上述Loss的形式就会变为交叉熵损失函数,也就是 ( 1 − p t ) γ (1-p_t)^\gamma (1pt)γ 这一项作为权重动态平衡系数失去了作用;
γ > 0 \gamma>0 γ>0 时,我们先来看一下 y = x γ y=x^\gamma y=xγ 的函数簇图像,只看 γ > 0 \gamma>0 γ>0 0 < x < 1

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 3
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值