标签平滑和标签翻转如何提高机器学习模型的性能

数据挖掘 表现 标签
2021-09-27 00:43:03

我已经看到帖子和研究论文提到了这些用于提高机器学习模型性能的技术。

当我们不确定标记数据集的正确性时,这些技术肯定是有意义的。

但是,我想知道在标签正确的情况下,这两种技术是否被证明对 ML 模型有益?

2个回答

标签翻转是一种训练技术,可以选择性地操纵标签,以使模型对标签噪声和相关攻击更加鲁棒——具体细节在很大程度上取决于噪声的性质。只有在所有标签都是(并且将永远是)正确并且不存在对手的假设下,标签翻转才没有任何好处。在需要噪声容限的情况下,使用标签翻转进行训练是有益的。

标签平滑是一种正则化技术(然后是一些),旨在提高模型性能。无论标签的正确性如何,它的效果都会发生。

来自1 深度神经网络的对抗性扰动,2016 年

在没有标签平滑的情况下,训练一个 softmax 分类器以对训练集做出无限自信的预测。这鼓励模型学习大权重和强响应。当值被推到训练数据集中的区域之外时,模型在线性外推时会做出更加极端的预测。标签平滑会惩罚模型对训练集做出过于自信的预测,迫使它学习更非线性的函数或具有较小斜率的线性函数。因此,标签平滑模型的推断不那么极端。

来自通过惩罚置信输出分布来规范神经网络,2017

自信的预测对应于具有低熵的输出分布。当网络将所有概率都放在训练集中的单个类上时,网络就会过度自信,这通常是过度拟合的症状。置信度惩罚构成了防止这些峰值分布的正则化项,从而导致更好的泛化。

作为标签平滑的结果,模型总体上变得更加健壮。它处理错误标签的能力增强只是整体改进的一部分。但是,不能声称标签平滑的效果纯粹是有益的。

什么时候开始标签平滑有帮助?, 2019 :

尽管对泛化和校准有积极影响,但标签平滑会损害蒸馏。我们从信息擦除的角度来解释这种影响。通过标签平滑,鼓励模型将每个不正确的类别视为同等可能。对于硬目标,在以后的表示中强制执行更少的结构,从而在预测的类和/或示例之间实现更多的 logit 变化。这可以通过估计输入示例和输出 logit 之间的互信息来量化,正如我们所展示的,标签平滑减少了互信息。

假设您有一个经过训练可以预测下一个单词的语言模型。您的训练数据中的一个样本是

hello, how, are, you

这样输入是三个单词“hello, how, are”,输出是单词“you”。如果没有标签平滑,你会告诉网络

(是的|你好,如何,)=1.0
也就是说,“你”将永远跟随“你好,怎么样,是”三个字。

那是错的。有数百个词可以跟在“hello, how, are”之后(例如“hello how are they”)。

在这种情况下,平滑标签意味着网络可以获得更好的数据。