我们之前学习的梯度下降法,在实际应用中通常特指批量梯度下降法(Batch Gradient Descent,BGD)。其核心逻辑是通过计算全部训练样本的损失函数梯度,一次性完成参数向量 的更新,更新公式为
其中 是基于所有样本计算的全局平均损失,其表达式为 , 是第 个样本的损失。 是全局损失对 的梯度向量。
不过,BGD 依赖全部样本的更新方式存在明显局限:当数据量较大时(如百万级样本),每次迭代需遍历所有数据计算梯度,导致计算速度极慢,单次迭代耗时显著增加。受全局损失平稳点影响,模型容易陷入局部最优解,难以找到真正的全局最优。此外,BGD 无法实时处理新增数据,即不支持在线学习。
为解决这些问题,梯度下降法衍生出两种重要变种: 随机梯度下降法 (Stochastic Gradient Descent,SGD)与 小批量梯度下降法(Mini-Batch Gradient Descent,MBGD)。
随机梯度下降法(SGD) 打破了必须用全部样本计算梯度的限制,转而通过随机选取单个样本的损失来计算梯度并更新 。它直接用单个随机样本的损失 替代 BGD 的全局平均损失,损失梯度向量为 ,对应的更新公式为
这种方式能最大程度提升迭代速度,在大数据场景和在线学习中表现突出。虽然单个样本的梯度可能存在一定波动,但随着迭代次数增加,这些波动会相互平衡, 仍能逐步收敛到全局最优或近似最优。
小批量梯度下降法(MBGD) 则是 BGD 与 SGD 的折中方案。它既不使用全部样本,也不局限于单个样本,而是从训练集中随机选取数量为 的小批量样本来计算梯度。其损失函数为小批量平均损失 ,对应的梯度向量为小批量样本梯度的平均值 ,更新公式为
由于 远小于 ,MBGD 的迭代速度比 BGD 快很多。同时,多个样本的梯度平均能减少单次更新的波动,让 更新更平稳、收敛更稳定,因此成为 AI 模型训练中应用最广泛的梯度下降变种。
下图展示了在一个具体例子中使用三种梯度下降法收敛的路径对比。

