概括
作者认为之所以单步骤检测算法精度上比不过双步骤检测算法,主要原因是训练过程中的正负样本不均衡导致,并提出了focal loss来解决类别不均衡问题
分析
双步骤检测算法中的类别不均衡
类别不均衡问题可以在双步骤检测算法中得到解决,在提议阶段(例如选择性搜索,RPN)迅速将候选对象位置缩小到较小的数量(例如,1~2k).在第二个分类阶段,采样启发式算法,例如固定的前景 - 背景比(1:3),或OHEM,可以在前景和背景之间保持可控的平衡.
单步骤检测算法中的类别不均衡
单步骤是密集采样,会枚举~100k个位置,其中大部分是背景,只有几个位置包含对象。非常严重的类别不均衡。会产生一下两个问题。
(1) training is inefficient as most locations are easy negatives that contribute no useful learning signal;
(2)en masse, the easy negatives can overwhelm training and lead to degenerate models.
- 培训效率低下,因为大多数位置很容易被分为背景,而没有有用的学习信息。
- 易分样本会压到模型导致一个很差的模型
focal loss
从最原始的交叉熵损失函数引入
为了方便,定义pt
此时,可以重写
C
E
(
p
,
y
)
=
C
E
(
p
t
)
=
−
l
o
g
(
p
t
)
CE(p,y)=CE(pt)=-log(p_t)
CE(p,y)=CE(pt)=−log(pt)
平衡交叉熵
解决类别不平衡最常用的一种想法引入加权因子
α
∈
[
0
,
1
]
\alpha \in [0,1]
α∈[0,1],对于少数类样本增大alpha即可
focal loss 定义
虽然引入加权因子alpha平衡了正负样本,但并没有区分难分样本与易分样本。
While α balances the importance of positive/negative examples, it does not differentiate between easy/hard examples.
提出focal loss公式
该损失函数有两个属性
- 一个样本被错分并且pt很小时,调制因子接近1,损失不受影响。pt->1时,因子变为0,对于已经很好分类的示例是降低权重的
-
γ
\gamma
γ参数的作用 ,调节对易分样本降低权重的系数。如果
γ
\gamma
γ=0,那么她和普通CE是一样的。
γ
\gamma
γ越大降低易分样本权重就越大,例如,当γ= 2时,与CE相比,具有pt = 0.9的示例分类将具有100x的较低损失,并且具有pt≈0.968,其将具有1000x较低的损失。这反过来又增加了纠正错误分类的例子的重要性
最终实验中采用了上述这个公式,论文中说加alpha会比不加alpha有一点儿准确度的提升