小目标检测损失函数 NWD 和重识别损失函数 Additive Angular Margin Loss

741 阅读1分钟

Normalized Gaussian Wasserstein Distance

由于小物体的边界框可能包含许多背景信息,框内每点的重要程度不同,因此可以考虑用高斯分布来建模边界框,直觉上,我们可以采用边界框的内接椭圆来形成一个高斯分布表示。

那么有了预测框(xa,ya,wa,ha)(x_a,y_a,w_a,h_a)和真实框(xb,yb,wb,hb)(x_b,y_b,w_b,h_b)对应的两个高斯分布 Na,NbN_a,N_b,如何评判他们的相似度,从而计算损失呢?

这里引入 Wasserstein 距离,该距离可以用来衡量两个分布的相似程度, Na,NbN_a,N_b 的二阶 Wasserstein 距离为

W22(Na,Nb)=([xa,ya,wa2,ha2]T,[xb,yb,wb2,hb2]T)22W_2^2(N_a,N_b) = \Vert ([x_a,y_a,\frac{w_a}{2},\frac{h_a}{2}]^T,[x_b,y_b,\frac{w_b}{2},\frac{h_b}{2}]^T) \Vert_2^2

归一化

NWD(Na,Nb)=exp(W22(Na,Nb)C)NWD(N_a,N_b) = exp(-\frac{\sqrt{W_2^2(N_a,N_b)}}{C})

损失

LNWD=1NWD(Na,Nb)L_{NWD} = 1 - NWD(N_a,N_b)

Additive Angular Margin Loss

softmax 损失函数:

Lsoftmax=logeWyiTxi+byiΣj=1NeWjTxi+bjL_{softmax} = -log\frac{e^{W_{y_i}^Tx_i + b_{y_i}}}{\Sigma_{j=1}^Ne^{W_j^Tx_i+b_j}}

其中 xix_i 表示第 i 个样本的特征向量,属于第 yiy_i 类。WjW_j 表示权重矩阵的第 j 列,N 是总类别数

令偏置为 0 ,WjTxiW_j^Tx_i 写成 Wjxicosθj\parallel W_j \parallel \parallel x_i \parallel cos\theta _j 的形式,使得 WjW_j 的 L2 范数为 1,xix_i 的 L2 范数为 s,则上式可写为

Lsoftmaxθ=logescosθyiescosθyi+Σj=1,jyiNescosθjL_{softmax\theta} = -log\frac{e^{scos\theta_{y_i}}}{e^{scos\theta_{y_i}} + \Sigma_{j=1,j\not=y_i}^Ne^{scos\theta_j}}

通过在 WjW_jxix_i 之间施加 additive angular margin penalty,即可达到增加类间距,缩小类内距的效果

LArcFace=logescos(θyi+m)escos(θyi+m)+Σj=1,jyiNescosθjL_{ArcFace} = -log\frac{e^{scos(\theta_{y_i}+m)}}{e^{scos(\theta_{y_i}+m)} + \Sigma_{j=1,j\not=y_i}^Ne^{scos\theta_j}}