深度学习基础:模型训练与优化
1. 模型选择与早期停止
学习曲线显示,训练误差会持续向 0 减小,但当模型过度拟合训练数据时,在验证集上的表现会变差。为保持模型在测试集上的泛化能力,我们会选择在验证集上表现最佳的模型(即模型的学习参数)。这需要将数据集划分为训练集、验证集和测试集,且三者不能有重叠。测试集应与训练集和验证集分开,否则会损害模型的完整性。
早期停止因其简单性,成为深度学习中最常用的正则化形式。
2. 梯度消失/爆炸问题
在使用反向传播训练多层神经网络时,会出现梯度消失或爆炸的问题。在反向传播过程中,梯度会与每一层的输出相乘。如果 ∇E > 1,梯度会越来越大;如果 1 < ∇E < 0,梯度会越来越小。
实际情况中,梯度消失会导致很少的误差被传播回网络的早期层,使学习变得非常缓慢甚至无法进行;梯度爆炸会导致权重最终溢出,从而阻止学习。神经网络层数越深,这个问题就越严重。
对于梯度爆炸问题,一个简单实用的解决方案是“裁剪”梯度,即在每个反向传播步骤中为梯度值设置一个最大值,以控制权重的增长。
3. 全批量和小批量梯度下降
3.1 全批量梯度下降
全批量梯度下降是梯度下降的一种变体,它在更新模型之前,先对整个数据集的误差进行评估,通过累积每个样本后的误差来更新模型。这种方法缓解了随机梯度下降(SGD)中每个样本引入的噪声问题,但更新频率可能会导致训练轮次之间的方差较高,从而使模型产生显著差异。在深度学习实践中,这种方法很少使用。
3.2 小批量梯度下降
小批量梯度下降是这两种策略之间的一种合适折衷方案。
超级会员免费看
订阅专栏 解锁全文

被折叠的 条评论
为什么被折叠?



