Skip to content

随机梯度下降 ​

Stochastic Gradient Descent ​

目标为解决以下优化问题:

minwJ(w)=E[f(w,X)]

求解参数 w,使目标函数(机器学习中的损失函数)最小化。

梯度下降(Gradient Descent,GD) ​

wk+1=wk−αk∇wE[f(w,X)]=wk−αkE[∇wf(w,X)]

特点:

❌ 难以求解

批量梯度下降(Batch Gradient Descent,BGD) ​

wk+1=wk−αk∇wE[f(w,X)]≈wk−αk1n∑i=1n∇wf(wk,xi)

特点:

✅ 梯度估计准确,收敛稳定

❌ 每轮计算复杂度 O(n),大数据场景不可行

小批量梯度下降(MBGD) ​

wk+1=wk−αk∇wE[f(w,X)]≈wk−αk1m∑jn∇wf(wk,xm)

随机梯度下降 ​

用单个样本梯度作为期望梯度的无偏估计:

wk+1=wk−αk∇wE[f(w,X)]≈wk−αk∇wf(wk,xk)

SGD 是一种特殊的 RM 算法,如果 SGD 满足下面的条件就可以知道 wk 收敛到 w∗ 就是方程的解:

  1. 0<c1≤∇w2f(w,X)≤c2

  2. ∑k=1∞αk=∞,∑k=1∞αk2<∞

  3. xk∼PX 是独立同分布的采样。