外观
标签平滑(label smoothing)
Label Smoothing
对于单标签分类数据集中的每个样本,全部概率质量都归属于单个类别,其余类别则为零。如下图所示:

问题在于,这种标签分布有时会过度驱使模型以相当高的置信度去学习每个样本的真实类别。这可能会影响模型的泛化能力。标签平滑(label smoothing)是一种较少被提及的正则化技术,能优雅地解决这个问题。


如上图所示,使用标签平滑时:
- 我们有意识地略微降低真实类别的概率质量。
- 被减少的概率质量均匀地分配给所有其他类别。
简单来说,可以将其理解为要求模型在训练和预测时“不要过于自信”,同时仍努力做出准确的预测。从下图可以明显看出该技术的效果:
在这个实验中,我在 Fashion MNIST 数据集上训练了两个神经网络(neural network),并且使用了完全相同的权重初始化。
- 一个不使用标签平滑。
- 另一个使用标签平滑。
使用标签平滑的模型获得了更好的测试准确率,即更好的泛化能力。
在将标签平滑用于我的许多项目之后,我也意识到它并不适合所有用例。因此,了解何时不该使用它很重要。你看,如果你只关心最终预测正确以及提升泛化能力,标签平滑会是一个相当好用的技术。然而,如果你在意以下方面,我不建议使用它:
- 得到正确的预测。
- 以及了解模型在生成预测时的置信度。
这是因为正如我们上面所讨论的,标签平滑引导模型对自己的预测“不要过于自信”。因此,我们通常会注意到每次预测的置信度值都会下降,如下图所示:

在一个具体的测试样本上:
- 不使用标签平滑的模型对类别 3 输出 99% 的概率。
- 使用标签平滑后,虽然预测仍然正确,但置信度下降到了 74%。这是在使用标签平滑时需要牢记的一点。尽管如此,这项技术对于正则化深度学习模型确实相当有前景。你可以在以下链接下载本章的代码笔记本:https://bit.ly/4ePt08d。 58