从源码解读Large-Margin Softmax Loss for Convolutional Neural Networks
1.论文回顾
论文地址:https://arxiv.org/pdf/1612.02295.pdf
L-softmax的主要思想是通过一个超参m对softmax+cross entropy的损失函数进行改进。一般我们把y = Wx + b, output = softmax(y), cross_entropy(output, label)这个过程统称为softmax loss.
从softmax到L-softmax的改进在论文中已经解释的非常清楚了。
损失函数可以写成下面的形式
关于角度的问题,我们需要设计一个单调递减的函数。我的理解是由于cos函数是一个周期函数,当m*theta > pi之后,cos(theta)会进入上升阶段。而很明显,在(4)这个式子中,theta(yi)越大,我们需要对这个限制的越厉害,因此也就需要一个更小的phi值。所以作者设计了如下一个phi函数。
在实现的过程中,我们利用cos(theta)的定义和多倍角公式,得到下面的式子: