2021-07-14

在使用深度学习模型进行分类任务时,我们通常会遇到以下问题:过度拟合、过度自信。 过度拟合得到了很好的研究,可以通过提前停止、辍学、权重正则化等来解决。另一方面,我们解决过度自信的工具较少。 标签平滑是一种正则化技术,可以解决这两个问题。

过度自信和校准

如果分类模型的预测结果概率反映了它们的准确性,则对分类模型进行校准。 例如,考虑我们数据集中的 100 个示例,每个示例的预测概率为 0.9。 如果我们的模型经过校准,那么应该正确分类 90 个示例。 类似地,在另外 100 个预测概率为 0.6 的示例中,我们预计只有 60 个示例被正确分类。
模型校准很重要:

  • 模型可解释性和可靠性
  • 决定下游应用的决策阈值
  • 将我们的模型集成到集成或机器学习管道中

过度自信的模型未经校准,其预测概率始终高于准确度。 例如,对于准确度仅为 0.6 的输入,它可能预测为 0.9。 请注意,具有较小测试误差的模型仍然可能过于自信,因此可以从标签平滑中受益。

标签平滑公式

标签平滑用 y_hot 和均匀分布的混合替换单热编码标签向量 y_hot:

y_ls = (1 - α) * y_hot + α / K

其中 K 是标签类别的数量,α 是确定平滑量的超参数。 如果 α = 0,我们得到原始的 one-hot 编码的 y_hot。 如果 α = 1,我们得到均匀分布。

标签平滑的动机

当损失函数为交叉熵时使用标签平滑,模型将 softmax 函数应用于倒数第二层的 logit 向量 z 以计算其输出概率 p。 在这种情况下,交叉熵损失函数相对于 logits 的梯度很简单

∇CE = p - y = softmax(z) - y
其中 y 是标签分布。 特别是,我们可以看到

  • 梯度下降将尝试使 p 尽可能接近 y。
  • 梯度在 -1 和 1 之间。

One-hot 编码标签鼓励将最大可能的 logit 间隙输入到 softmax 函数中。 直观地说,大的 logit 差距与有界梯度相结合会使模型的适应性降低,并且对其预测过于自信。
相比之下,平滑标签鼓励小的 logit 差距,如下面的示例所示。 在 [3] 中表明,这会导致更好的模型校准并防止过度自信的预测。

一个具体的例子

假设我们有 K = 3 个类,我们的标签属于第 1 个类。 让 [a, b, c] 成为我们的 logit 向量。
如果我们不使用标签平滑,则标签向量是 one-hot 编码向量 [1, 0, 0]。 我们的模型将使 a ≫ b 和 a ≫ c。 例如,将 softmax 应用于 logit 向量 [10, 0, 0] 会得到 [0.9999, 0, 0] 舍入到小数点后 4 位。
如果我们使用 α = 0.1 的标签平滑,平滑后的标签向量 ≈ [0.9333, 0.0333, 0.0333]。 logit向量[3.3322, 0, 0]将平滑后的标签向量逼近softmax后的小数点后4位,差距更小。 这就是我们将标签平滑称为正则化技术的原因,因为它可以限制最大的 logit 变得比其他 logit 大得多。

FAQ

问:我们什么时候使用标签平滑?
A:每当分类神经网络出现过度拟合和/或过度自信时,我们都可以尝试标签平滑。
问:我们如何选择α?
A:就像其他正则化超参数一样,没有选择α的公式。 它通常通过反复试验来完成,α = 0.1 是一个很好的起点。
问:我们可以在标签平滑中使用均匀分布以外的分布吗?
答:技术上是的。 在 [4] 中,理论基础是为任意分布开发的。 话虽如此,绝大多数关于标签平滑的实证研究都使用均匀分布。
问:标签平滑是否在深度学习之外使用?
答:不是真的。 大多数流行的非深度学习方法不使用 softmax 函数。 因此标签平滑通常不适用。

来源地址:https://towardsdatascience.com/what-is-label-smoothing-108debd7ef06

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值