You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gradient descent波动问题:Batch gradient descent与SGD的特性差异问询

问题1:为什么Batch gradient descent的波动(斜率)小于SGD的波动(斜率)

梯度下降路径对比

  • Batch Gradient Descent(BGD,批量梯度下降)每次更新参数前会遍历全量训练样本计算损失,再对所有样本的梯度取平均值作为更新依据,不同样本自带的随机噪声会在平均过程中互相抵消,最终得到的梯度方向接近全局损失的最优下降方向,所以更新路径顺滑、波动小。
  • SGD(随机梯度下降)每次仅使用单个样本的梯度执行更新,单个样本的损失分布和全局分布往往存在偏差,甚至可能出现单样本梯度方向和全局最优方向完全相反的情况,所以每次更新的方向跳跃性强,路径呈现明显的锯齿状,波动远大于BGD。

问题2:为什么SGD相比Batch gradient descent能更好地规避局部最小值?

  • 局部最小值、鞍点这类次优收敛区域的核心特征是全量样本的平均梯度趋近于0,BGD基于全量平均梯度更新,一旦进入这类区域,梯度接近0就会停止更新,被困在次优点无法跳出。
  • SGD的单样本梯度本身带有随机噪声,哪怕模型参数已经落在局部最小值的位置,单个样本计算出的梯度依然大概率不为0,相当于自带了随机扰动,会推动参数跳出平缓的局部最优坑,有更高概率找到更优的局部最小值甚至全局最小值。

问题3:Batch Gradient遍历全部样本后再执行参数更新的机制,实际意义是什么?

  • 梯度估计无偏:全量样本计算得到的梯度是对真实损失函数梯度的无偏估计,更新方向最准确,训练过程稳定性极强,不会因为样本噪声出现更新方向跑偏的问题。
  • 适配并行计算:全量样本的梯度计算天然支持拆分到多个计算单元并行执行,非常适合用GPU做批量加速,在大数据集、大模型训练场景下可以通过扩大batch size充分利用硬件算力。
  • 调参门槛低:因为更新波动小,训练过程的损失曲线平滑,对学习率等超参数的容忍度更高,调参难度远低于SGD。
  • 适合高精度小样本场景:针对样本量不大、对训练精度要求高的任务,BGD可以稳定收敛到全局最优的极小值点,不会受单样本噪声干扰,最终训练效果更好。

内容的提问来源于stack exchange,提问作者Hoàng Ngọc Thành

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 06:18:04