ConerNet角点网络中的角点分类损失的理解

  最近重新例会汇报CenterNet网络时候忘了CorerNet网络那个损失函数了,因此被老师说看论文没看透,于是重新回来认真读一遍。它是由交叉熵损失进阶到Focal Loss然后再到这个损失函数的,我们当做啥都不懂从头温习吧。

1.交叉熵损失

L i = − [ y i l o g y ^ i + ( 1 − y i ) l o g ( 1 − y ^ i ) ] L_{i}=-[y^{i}log\widehat{y}^{i}+(1-y^{i})log(1-\widehat{y}^{i})] Li=[yilogy i+(1yi)log(1y i)]
  在二分类问题中,真实样本为[0,1],表示负类和正类。一般会通 过一个Sigmoid函数,输出一个概率值,反映了为正类的可能性。
  输出表征当前样本标签为1的概率:
y i = P ( y = 1 ∣ x ) y^{i}=P(y=1|x) yi=P(y=1x)
  输出样本标签为0的概率:
1 − y i = P ( y = 0 ∣ x ) 1-y^{i}=P(y=0|x) 1yi=P(y=0x)
极大似然的角度整合 P ( y ∣ x ) = y ^ y ⋅ ( 1 − y ^ ) 1 − y P(y|x)=\widehat{y}^{y}·(1-\widehat{y})^{1-y} P(yx)=y y(1y )1y
当真实样本为0,转化为 P ( y = 0 ∣ x ) = 1 − y ^ P(y=0|x)=1-\widehat{y} P(y=0x)=1y
当真实样本为1,转化为 P ( y = 1 ∣ x ) = y ^ P(y=1|x)=\widehat{y} P(y=1x)=y
我们本质是希望P(y|x)越大越好,若y=0, 1 − y ^ 1-\widehat{y} 1y 越大, y ^ \widehat{y} y 越小就越靠近0。若y=1, y ^ \widehat{y} y 越大就越靠近1。
  对数函数不影响单调性,则变成了一开始给的公式。

2.Focal Loss

  目的是为了解决one_stage目标检测中正负样本比例严重失衡问题,该损失函数降低了大量简单样本在训练中占的权重。
  样本中会存来大量的easy nagetive example(对于负样本就是与0近的,对于正样本就是与1近的),它们会对loss起主要贡献作用,会主导梯度方向,这样网络就学不到什么有用信息,对object准确分类造成影响,淹没少量正样本影响

α——平衡交叉熵

  为交叉熵定一个权重,其中权重因子为相反类的比重(负样本越多α越大,1-α越小)。负样本越多,给它权重越小用来降低负样本影响。
L f l = − α l o g ( P t ) = { − α l o g y ′ − ( 1 − α ) l o g ( 1 − y ′ ) L_{fl}=-\alpha log\left ( P_{t} \right )=\left\{\begin{matrix} -\alpha logy{}' \\ -(1-\alpha) log(1-y{}') \end{matrix}\right. Lfl=αlog(Pt)={αlogy(1α)log(1y)

( 1 − y ) γ (1-y)^{\gamma} 1yγ简单与困难样本

L f l = − α l o g ( P t ) = { − α ( 1 − y ′ ) γ l o g y ′ − ( 1 − α ) y ′ γ l o g ( 1 − y ′ ) L_{fl}=-\alpha log\left ( P_{t} \right )=\left\{\begin{matrix} -\alpha(1-y{}') ^{\gamma }logy{}' \\ -(1-\alpha) y{}'^{\gamma }log(1-y{}') \end{matrix}\right. Lfl=αlog(Pt)={α(1y)γlogy(1α)yγlog(1y)
当y为正样本,y为简单样本则 ( 1 − y ) γ (1-y)^{\gamma} 1yγ很小,对损失影响小;当y为负样本, y γ y^{\gamma} yγ很小,对损失影响很小。简单样本的处理是为了让人关注易分错的样本。

3.CornerNet的损失函数

L d e t = − 1 N ∑ C c = 1 ∑ H i = 1 ∑ W j = 1 { ( 1 − P c i j ) α l o g P c i j ( 1 − y c i j ) β P c i j α l o g ( 1 − y ′ ) L_{det}=-\frac{1}{N}\sum_{C}^{c=1}\sum_{H}^{i=1}\sum_{W}^{j=1}\left\{\begin{matrix} (1-P_{cij}) ^{\alpha }logP_{cij}\\ (1-y_{cij})^{\beta } P_{cij}^{\alpha}log(1-y{}') \end{matrix}\right. Ldet=N1Cc=1Hi=1Wj=1{(1Pcij)αlogPcij(1ycij)βPcijαlog(1y)
  保留了Focal Loss中对简单样本损失减小;对于 y c i j = e − x 2 + y 2 2 σ 2 y_{cij}=e^{^{-\frac{x^{2}+y^{2}}{2\sigma ^{2}}}} ycij=e2σ2x2+y2,离中心点越近, y c i j y_{cij} ycij越接近1;离中心点越远, y c i j y_{cij} ycij越远离1;则近的点 1 − y c i j 1-y_{cij} 1ycij小,远的点 1 − y c i j 1-y_{cij} 1ycij大。与中心越近的块与正样本更相似与GT拥有相对高的IoU,负样本训练则不需要过多关注这些区域,因此降低它的权重。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值