过拟合

1. 简介

机器学习的目标是提高泛化能力,即便是没有包含在训练数据里的未观测数据,也希望模型可以进行正确的识别。而机器学习问题中经常会出现过拟合的问题,即只能拟合训练数据,但不能很好地拟合不包含在训练数据中的其他数据的状态。

2. 原因

发生过拟合的原因,主要有以下两个。

  • 模型拥有大量参数、表现力强。
  • 训练数据少。

3. 解决

3.1 权值衰减

该方法通过在学习的过程中对大的权重进行惩罚,来抑制过拟合。即在原来的损失函数中添加一项正则惩罚项来抑制过拟合:

L^L12λW2\begin{array}{c} \hat{L} \leftarrow L - \frac{1}{2} \lambda \boldsymbol{W}^2 \end{array}

其中,λ\lambda 是控制正则化强度的超参数。

【注】这里采用的是常用的 L2L_2 范数,也可以根据具体题目使用其他范数(比如 L1L_1LL_\infty 范数等)。

3.2 Dropout

Dropout 是一种在学习的过程中随机删除神经元的方法。训练时,随机选出隐藏层的神经元,然后将其删除;被删除的神经元不再进行信号的传递。

【注】可以将 Dropout 理解为,通过在学习过程中随机删除神经元,从而每一次都让不同
的模型进行学习,即 Dropout 将集成学习的效果(模拟地)通过一个网络实现了。