1、批量
批量的概念:
在计算梯度时,并非使用所有数据来计算损失函数 L,而是将数据分成若干个批量进行处理。
每个批量大小为 B,对应 B 笔数据。遍历所有批量称为一个回合。在每个回合中,通常会随机打乱数据顺序。
批量梯度下降的影响:
批量梯度下降法:使用全部训练数据来更新参数,梯度较稳定。
随机梯度下降法:每次使用一个样本更新参数,计算较快但带有较多噪声。
小批量梯度下降法:结合两者优点,在一定范围内选择批量大小,既平衡计算速度又保证更新稳定性。
批量大小与计算时间的关系:
随着批量大小的增加,计算时间呈现不同趋势。在小批量情况下,更新较为频繁但计算时间较短;大批量则相反,更新次数减少,但每次更新耗时较长。
实验表明,在训练不同的模型时,小批量往往能够更快地跳出局部最小值,但在极端情况下(如批量大小极大时),会导致计算效率降低。
2、动量
动量的概念:动量法通过考虑前一步的更新方向,来加速梯度下降过程,尤其在凹槽较深的情况下。它引入了一个动量项,使得参数更新方向不仅依赖当前梯度,还会考虑之前的更新方向。
动量的作用:
动量法能有效减少梯度震荡,帮助跳出鞍点或局部最小值。
在大批量情况下,动量法的优势更加明显,能够加速收敛速度并提高稳定性。
3、实验比较
实验结果:
实验表明,批量大小的选择对训练结果有显著影响。较小的批量更有助于模型跳出局部最小值,但在一些极端情况下可能导致过度震荡,难以达到全局最优。
优化建议:
使用动量法结合小批量梯度下降,有助于更稳定且快速地训练模型。
批量大小应根据具体问题灵活调整,避免单纯依赖大批量或小批量来进行优化。