分为正负样本不均衡、难易样本不均衡及类别间样本不均衡问题。
目标检测沿用了分类的思想,故目标检测继承了分类问题的样本不均衡情况。
正负样本不均衡:
Faster Rcnn,一共生成20000个框,但一张图物体数量可能只有10个,即正样本只在90左右,其余均为负样本。这样,正样本的损失在损失函数之中,无法得到很好的体现。
难易不均衡问题:
结合样本的正负,可以分为难正(错分为负样本的正样本)、难负、易正及易负四大类。同样,易分样本数量远大于难分样本,使得难分样本的损失函数贡献降低。
分类问题样本不均衡:
对于分类样本少的地方,检测精度不会高。反而偏向于分类样本多的目标。
以上总体有以下解决方法:
人工滤除简单负样本,人工控制正负样本比例,在损失函数中使用权重惩罚的方式,以及通过数据增强的方式扩充数据集。
针对难易样本不均衡的问题是:
OHEM(Online HardExample Mining)方法高效率地实现了在线难样本的挖掘。
步骤:网络分为结构相同的A,B两部分,A网络不反向传播更新参数,只计算损失
(1)按照原始Fast RCNN算法,经过卷积提取网络与RoI Pooling得到了每一张图像的RoI。
(2)使ROI进行NMS处理,去除掉重叠严重的部分。通过a网络进行前向计算,挑选出损失大的,作为难例。
(3)将难例输入b网络,进行反向传播参数更新,再将更新后的参数与a网络进行同步。
数据集越大、难度越高,OHEM对于检测的提升越明显。
交叉熵函数的改善:Focal Loss
下面以2值交叉熵,要么真值概率为1,要么为0:
F
L
(
p
t
)
=
−
α
t
(
1
−
p
t
)
λ
log
(
p
t
)
,
α
用
于
调
节
正
负
样
本
,
λ
用
于
解
决
难
易
均
衡
问
题
其
中
p
t
=
{
p
,
y
=
1
1
−
p
,
y
=
0
,
其
中
p
为
预
测
概
率
,
当
真
实
概
率
为
1
时
FL(p_t)=-\alpha_t(1-p_t)^\lambda\log(p_t),\\[13pt]\alpha用于调节正负样本,\\\lambda用于解决难易均衡问题\\[13pt]其中p_t=\left\{ \begin{aligned} p,&y=1 \\ 1-p,&y=0 \end{aligned} \right.,其中p为预测概率,当真实概率为1时
FL(pt)=−αt(1−pt)λlog(pt),α用于调节正负样本,λ用于解决难易均衡问题其中pt={p,1−p,y=1y=0,其中p为预测概率,当真实概率为1时
原论文中,
α
t
=
{
0.25
,
y
=
1
0.85
,
y
=
0
其
意
义
为
,
减
小
正
样
本
损
失
权
重
,
λ
一
般
取
2
,
y
=
1
时
,
p
t
=
p
,
对
于
难
样
本
,
p
很
小
,
1
−
p
很
大
,
其
损
失
函
数
前
系
数
越
大
,
放
大
了
难
样
本
的
损
失
\alpha_t=\left\{ \begin{aligned} &{0.25,y=1} \\ &{0.85,y=0} \end{aligned} \right.\\[10pt]其意义为,减小正样本损失权重,\\\lambda一般取2,\\[10pt]y=1时,p_t=p,对于难样本,p很小,1-p很大,\\其损失函数前系数越大,放大了难样本的损失
αt={0.25,y=10.85,y=0其意义为,减小正样本损失权重,λ一般取2,y=1时,pt=p,对于难样本,p很小,1−p很大,其损失函数前系数越大,放大了难样本的损失