Label smooth

什么是Label smooth regularization

对分类问题 经过softmax函数之后的 one hot 编码(正类概率为1,其他为0)进行改进。

为什么要使用Label smooth regularization

one-hot 编码的问题:会自驱的向正类和负类的差值扩大的方向学习(过度的信任标签为1的为正类),在训练数据不足的情况容易过拟合。

原理

思路:软化softmax、劫富济贫
我们使用交叉熵损失函数
l o s s = − ∑ k = 1 K q ( k ∣ x ) log ⁡ ( p ( k ∣ x ) ) loss = - \sum_{k=1}^K q(k|x) \log(p(k|x)) loss=k=1Kq(kx)log(p(kx))
其中 q q q表示真实类别, p p p表示预测的类别
q ′ ( k ) = ( 1 − ϵ ) q ( k ) + ϵ u ( k ) H ( q ′ , p ) = − ∑ q ′ ( k ) log ⁡ p ( k ) H ( q ′ , p ) = ( 1 − ϵ ) H ( q , p ) + ϵ H ( u , p ) q'(k)=(1-\epsilon)q(k)+\epsilon u(k)\\ H(q',p) = -\sum q'(k) \log p(k)\\ H(q',p) =(1-\epsilon) H(q,p)+\epsilon H(u,p) q(k)=(1ϵ)q(k)+ϵu(k)H(q,p)=q(k)logp(k)H(q,p)=(1ϵ)H(q,p)+ϵH(u,p)

你可能感兴趣的:(NLP)