label smooth/mixup——深度学习中的一种防止过拟合方法
Label Smooth
在常见的多分类问题中,先经过softmax处理后进行交叉熵计算,原理很简单可以将计算loss理解为,为了使得网络对测试集预测的概率分布和其真实分布接近,常用的做法是使用one-hot对真实标签进行编码,作者认为这种将标签强制one-hot的方式使网络过于自信会导致过拟合,因此软化这种编码方式。
等号左侧:是一种新的预测的分布
等号右侧:前半部分是对原分布乘一个权重, 是一个超参,需要自己设定,取值在0到1范围内。后半部分u是一个均匀分布,k表示模型的类别数。
由以上公式可以看出,这种方式使label有 概率来自于均匀分布,
概率来自于原分布。这就相当于在原label上增加噪声,让模型的预测值不要过度集中于概率较高的类别,把一些概率放在概率较低的类别。
因此,交叉熵可以替换为:
可以理解为:loss为对“预测的分布与真实分布”及“预测分布与先验分布(均匀分布)”的惩罚。
Mixup
mixup是一种非常规的数据增强方法,一个和数据无关的简单数据增强原则,其以线性插值的方式来构建新的训练样本和标签。最终对标签的处理如下公式所示,这很简单但对于增强策略来说又很不一般。
公式:
由以上公式可以看出,同时对输入x及其对应label y做增强,对两张图片做融合,同时对他们的label做融合,其中 是一个融合比例取值范围为0到1,由beta分布(
和
计算时相等,即都取
)计算得到。
需要注意的是,yi,yj都是one-hot编码的label。
Reference