label smooth/mixup——深度学习中的一种防止过拟合方法

 

Label Smooth

在常见的多分类问题中,先经过softmax处理后进行交叉熵计算,原理很简单可以将计算loss理解为,为了使得网络对测试集预测的概率分布和其真实分布接近,常用的做法是使用one-hot对真实标签进行编码,作者认为这种将标签强制one-hot的方式使网络过于自信会导致过拟合,因此软化这种编码方式。

label smooth/mixup——深度学习中的一种防止过拟合方法

等号左侧:是一种新的预测的分布

等号右侧:前半部分是对原分布乘一个权重,label smooth/mixup——深度学习中的一种防止过拟合方法 是一个超参,需要自己设定,取值在0到1范围内。后半部分u是一个均匀分布,k表示模型的类别数。

由以上公式可以看出,这种方式使label有 label smooth/mixup——深度学习中的一种防止过拟合方法 概率来自于均匀分布, label smooth/mixup——深度学习中的一种防止过拟合方法 概率来自于原分布。这就相当于在原label上增加噪声,让模型的预测值不要过度集中于概率较高的类别,把一些概率放在概率较低的类别。

因此,交叉熵可以替换为:

label smooth/mixup——深度学习中的一种防止过拟合方法

可以理解为:loss为对“预测的分布与真实分布”“预测分布与先验分布(均匀分布)”的惩罚。

Mixup

mixup是一种非常规的数据增强方法,一个和数据无关的简单数据增强原则,其以线性插值的方式来构建新的训练样本和标签。最终对标签的处理如下公式所示,这很简单但对于增强策略来说又很不一般。

公式:

label smooth/mixup——深度学习中的一种防止过拟合方法

label smooth/mixup——深度学习中的一种防止过拟合方法

label smooth/mixup——深度学习中的一种防止过拟合方法

由以上公式可以看出,同时对输入x及其对应label y做增强,对两张图片做融合,同时对他们的label做融合,其中 label smooth/mixup——深度学习中的一种防止过拟合方法 是一个融合比例取值范围为0到1,由beta分布( label smooth/mixup——深度学习中的一种防止过拟合方法和 label smooth/mixup——深度学习中的一种防止过拟合方法 计算时相等,即都取 label smooth/mixup——深度学习中的一种防止过拟合方法 )计算得到。

需要注意的是,yi,yj都是one-hot编码的label。

Reference

label smooth、mixup理解

深度学习 | 训练网络trick——mixup