1.背景
常见的分类损失函数可以概括为减小类内距离sns_nsn,增大类间距离sps_psp。优化目标如下:
min(sn−sp) min(s_n-s_p)min(sn−sp)
2.存在的问题
- 优化不够灵活。
优化目标对sns_nsn和sps_psp的惩罚作用是相等的,二者的系数都为1。
例如{sn,sp}={0.1,0.5}\{s_n,s_p\}=\{0.1 ,0.5 \}{sn,sp}={0.1,0.5}。这个时候类内距离sn=0.1s_n=0.1sn=0.1,接近0,模型已经能够很好的将相同的类聚在一起。但由于此时sp=0.5s_p=0.5sp=0.5,受sps_psp的牵累,sns_nsn依然会接受一个较大的惩罚梯度。 - 收敛状态模糊。
记margin=sn−spmargin = s_n-s_pmargin=sn−sp
考虑两个状态。T={sn,sp}={0.2,0.5}T=\{s_n,s_p\}=\{0.2,0.5 \}T={sn,sp}={0.2,0.5},T1={0.4,0.7}T^1=\{0.4,0.7\}T1={0.4,0.7}虽然TTT和T1T^1T1收敛状态是一样的,marginmarginmargin都是0.3,但此时0.5和0.4已经十分接近,即TTT时候的类间距离和T1T^1T1时候的类内距离是差不多的,这种收敛状态会破坏特征空间的可分离性(不同类间的边界相互耦合,不够清晰)。
3.动机
针对上述两个challenge,给sns_nsn 和 sps_psp加上不同的惩罚系数,优化目标变为:
min(α∗sn−β∗sp)min(α*s_n - β*s_p)min(α∗sn−β∗sp)
ps:决策边界从常见方法的直线变为本文方法的环形,故取名为circle loss。
4.个人感受
额外引入了两个超参,性能一般,