正则化
过拟合问题指的是只能拟合训练数据,但不能很好地拟合不包含在训练数据中的其他数据的状态(机器学习的目标是提高泛化能力)。
过拟合的原因:模型参数量大、表现力强;训练数据少。
解决方法
(1). 权值衰减
- 权值衰减是一种抑制过拟合的方法。
- 该方法通过在学习的过程中加大权重进行惩罚,来抑制过拟合。
(权值衰减方法都会为损失函数加上权重的L2
范数 1/2*C*W**2
)
(2). Dropout
- Dropout是一种在学习过程中随机删除神经元的方法,:对于网络模型较复杂的网络,经常采用Dropout方法。
- 训练时,随机地选出隐藏层的神经元,然后将其删除。
- 被删除的神经元不在进行信号传递。
- 测试时,各个神经元的输出都要乘上Drop的比例,
集成学习:就是让多个模型单独地进行学习,推理时再取多个模型的输出的平均值。
超参数的验证:
神经网络中的参数:
- 权重、偏置;
- 超参数:层神经元数量、batch大小、学习率或权值衰减等。
不能使用测试数据评估超参数的性能。
原因:如果使用测试数据调整超参数,超参数的值会对测试数据发生过拟合。
建模过程中用到的数据(自行划分):
名称 | 描述 | 作用 |
---|---|---|
验证数据 | 专门用于调整超参数的数据 | 用于超参数的性能评估 |
训练数据 | 参数训练数据 | 用于权重和偏置的学习 |
测试数据 | 测试训练效果的数据 | 用于泛化能力的评估 |
超参数的最优化:
思路:逐渐缩小超参数"好值"的存在范围.
逐渐缩小参数范围是指一开始先大致设定一个范围,从这个范围中随机选择出一个超参数(采样),用这个采样到的值进行识别精度的评估;然后,多次重复该操作,观察识别精度的结果,根据这个结果缩小超参数的"好值"的范围。这样就可以逐渐确定出超参数的合适范围。
技巧:
- 随机采样的搜索结果会更好;
- 在超参数的最优化中,减少学习的epoch,缩短一次评估所需的时间