1323 字
7 分钟
数据科学与工程优化(五)

一、随机梯度下降法(SGD)背景#

许多机器学习与数据科学中的目标函数都具有求和结构

minxRnf(x)=1mj=1mfj(x)\min_{x \in \mathbb{R}^n} f(x) = \frac{1}{m} \sum_{j=1}^{m} f_j(x)

例如,fj(x)=ajTxyj2f_j(x) = \|a_j^T x - y_j\|^2(aj,yj)(a_j, y_j) 是数据点,mm 很大。

标准梯度下降法每步需计算:

f(xk)=1mj=1mfj(xk)\nabla f(x_k) = \frac{1}{m} \sum_{j=1}^m \nabla f_j(x_k)

计算复杂度高达 O(mn)O(mn),昂贵且不适合大规模问题。因此我们考虑近似计算梯度

二、随机梯度与SGD算法#

1、小批量梯度与期望#

定义:对任意索引集 S={j1,...,jp}S = \{j_1, ..., j_p\},可定义小批量目标和梯度:

fS(x)=1p=1pfj(x),fS(x)=1p=1pfj(x)f_S(x) = \frac{1}{p} \sum_{\ell=1}^p f_{j_\ell}(x), \qquad \nabla f_S(x) = \frac{1}{p} \sum_{\ell=1}^p \nabla f_{j_\ell}(x)

jj_\ell 独立均匀采样自 {1,...,m}\{1, ..., m\},则

E[fS(x)]=f(x)\mathbb{E}[\nabla f_S(x)] = \nabla f(x)

即小批量梯度是全梯度的无偏估计

2、SGD算法流程#

  1. 给定初始点 X0X_0(可随机)。
  2. k=0,1,2,k=0,1,2,\ldots 重复:
    • 随机采样 Sk={j1,...,jpk}S_k=\{j_1, ..., j_{p_k}\},每个 jj_\ell 独立采自 {1,...,m}\{1,...,m\}
    • Gk=fSk(Xk)G_k = \nabla f_{S_k}(X_k)
    • Xk+1=XkαkGkX_{k+1} = X_k - \alpha_k G_k
  3. 步长 αk\alpha_k 可固定或动态调整,pkp_k 常常取1(单样本),也可取小批量。

由于 f(Xk)T(Gk)\nabla f(X_k)^T (-G_k) 不一定 <0<0,每步不保证严格下降,因此分析期望下降

三、条件期望与马尔可夫性质#

  • Ek[Y]\mathbb{E}_k[Y] 为对 (X0,S0,,Sk)(X_0, S_0,\ldots,S_k) 的期望。
  • Xk+1X_{k+1} 仅依赖于 XkX_kSkS_k,是马尔可夫过程
  • E[GkXk]=f(Xk)\mathbb{E}[G_k | X_k] = \nabla f(X_k)

四、数值举例#

1、二分类问题(MNIST 4 vs 9)#

目标函数:

minxRn1mi=1m(aiTxyi)2\min_{x \in \mathbb{R}^n} \frac{1}{m} \sum_{i=1}^m (a_i^T x - y_i)^2

其中 yi=1y_i=1(数字9),yi=1y_i=-1(数字4)。

SGD设置:αk=0.001\alpha_k=0.001Sk=1|S_k|=1。数值结果显示目标减少但后期有波动(噪声地板,noise floor)。

2、一般化SGD#

更一般形式为:

f(x)=Eξ[F(x,ξ)]f(x) = \mathbb{E}_\xi[F(x,\xi)]

每步采样 ξk\xi_k,取 Gk=xF(Xk,ξk)G_k = \nabla_x F(X_k, \xi_k)。同理,

Eξk[xF(Xk,ξk)Xk]=f(Xk)\mathbb{E}_{\xi_k}[\nabla_x F(X_k, \xi_k)|X_k] = \nabla f(X_k)

五、L-光滑情形下的SGD收敛性#

1、假设#

  1. 每个 fjf_j 都是 LL-光滑函数 f\Rightarrow f 也是 LL-光滑。

  2. 存在 M>0M>0,使得

    VAR(GkXk):=E[(Gkf(Xk))T(Gkf(Xk))Xk]M\operatorname{VAR}(G_k|X_k) := \mathbb{E}[(G_k - \nabla f(X_k))^T (G_k - \nabla f(X_k)) | X_k] \leq M

    即条件方差有界。

    证明:

    由于 Gk=fSk(Xk)G_k = \nabla f_{S_k}(X_k) 是对样本集 SkS_k 的梯度均值,且每个 jj_\ell 独立均匀采样自 {1,...,m}\{1, ..., m\},我们有

    E[GkXk]=f(Xk)\mathbb{E}[G_k | X_k] = \nabla f(X_k)

    计算条件方差:

    VAR(GkXk)=E[Gkf(Xk)2Xk]\operatorname{VAR}(G_k|X_k) = \mathbb{E}[\|G_k - \nabla f(X_k)\|^2 | X_k]

    对于单样本(Sk=1|S_k|=1),

    VAR(GkXk)=1mj=1mfj(Xk)f(Xk)2\operatorname{VAR}(G_k|X_k) = \frac{1}{m} \sum_{j=1}^m \|\nabla f_j(X_k) - \nabla f(X_k)\|^2

    若每个 fj(x)\|\nabla f_j(x)\| 在所有 xx 上有界,即存在 C>0C>0 使得 fj(x)C\|\nabla f_j(x)\| \leq C,则

    VAR(GkXk)4C2\operatorname{VAR}(G_k|X_k) \leq 4C^2

    因此,若每个分量梯度有界,则条件方差有界,满足假设2。

2、关键引理:期望过估计(Overestimation in expectation)#

引理:

在上述假设下,

E[f(Xk+1)Xk]f(Xk)αkf(Xk)2+L(αk)22E[Gk2Xk]\mathbb{E}[f(X_{k+1}) | X_k] \leq f(X_k) - \alpha_k \|\nabla f(X_k)\|^2 + \frac{L (\alpha_k)^2}{2} \mathbb{E}[\|G_k\|^2 | X_k]

若进一步有条件方差界 MM,则

E[f(Xk+1)Xk]f(Xk)+αk(Lαk21)f(Xk)2+ML(αk)22\mathbb{E}[f(X_{k+1}) | X_k] \leq f(X_k) + \alpha_k \left( \frac{L \alpha_k}{2} - 1 \right) \|\nabla f(X_k)\|^2 + \frac{ML (\alpha_k)^2}{2}
  • αk\alpha_k 足够小,右侧为严格下降。

证明:

LL-光滑性,

f(XkαkGk)f(Xk)αkf(Xk)TGk+L2(αk)2Gk2f(X_k - \alpha_k G_k) \leq f(X_k) - \alpha_k \nabla f(X_k)^T G_k + \frac{L}{2} (\alpha_k)^2 \|G_k\|^2

GkG_k 条件期望,利用 E[GkXk]=f(Xk)\mathbb{E}[G_k|X_k] = \nabla f(X_k),由 LL-光滑性,有

f(XkαkGk)f(Xk)αkf(Xk)TGk+L2(αk)2Gk2f(X_k - \alpha_k G_k) \leq f(X_k) - \alpha_k \nabla f(X_k)^T G_k + \frac{L}{2} (\alpha_k)^2 \|G_k\|^2

SkS_k 条件期望(即对 GkG_k 关于 XkX_k 的条件期望):

E[f(Xk+1)Xk]f(Xk)αkf(Xk)TE[GkXk]+L2(αk)2E[Gk2Xk]\mathbb{E}[f(X_{k+1})|X_k] \leq f(X_k) - \alpha_k \nabla f(X_k)^T \mathbb{E}[G_k|X_k] + \frac{L}{2} (\alpha_k)^2 \mathbb{E}[\|G_k\|^2|X_k]

由于 E[GkXk]=f(Xk)\mathbb{E}[G_k|X_k] = \nabla f(X_k),代入得

E[f(Xk+1)Xk]f(Xk)αkf(Xk)2+L2(αk)2E[Gk2Xk]\mathbb{E}[f(X_{k+1})|X_k] \leq f(X_k) - \alpha_k \|\nabla f(X_k)\|^2 + \frac{L}{2} (\alpha_k)^2 \mathbb{E}[\|G_k\|^2|X_k]

3、收敛性定理(L-光滑情况下)#

定理:

ff 有下界 ff,满足上述假设。SGD 用定步长 αkη/L\alpha_k \equiv \eta/Lη(0,1]\eta \in (0,1],则

min0ik1E[f(Xi)2]ηM+2L(f(x0)f)kη\min_{0 \leq i \leq k-1} \mathbb{E}[\|\nabla f(X_i)\|^2] \leq \eta M + \frac{2L(f(x_0) - f)}{k \eta}

即噪声存在,f(Xk)2\|\nabla f(X_k)\|^2 只收敛到 ηM\eta M,无法无限趋近于零(称为noise floor)。

证明:

由关键引理,

E[f(Xk+1)Xk]f(Xk)+αk(Lαk21)f(Xk)2+MLαk22\mathbb{E}[f(X_{k+1}) | X_k] \leq f(X_k) + \alpha_k \left( \frac{L\alpha_k}{2} - 1 \right) \|\nabla f(X_k)\|^2 + \frac{ML\alpha_k^2}{2}

αkη/L\alpha_k \equiv \eta/L,其中 η(0,1]\eta \in (0,1],则

Lαk21=η210\frac{L\alpha_k}{2} - 1 = \frac{\eta}{2} - 1 \leq 0

因此,

E[f(Xk+1)Xk]f(Xk)η2f(Xk)2+Mη22L\mathbb{E}[f(X_{k+1}) | X_k] \leq f(X_k) - \frac{\eta}{2} \|\nabla f(X_k)\|^2 + \frac{M\eta^2}{2L}

XkX_k 取全期望,记 fk=E[f(Xk)]f_k = \mathbb{E}[f(X_k)],有

fk+1fkη2E[f(Xk)2]+Mη22Lf_{k+1} \leq f_k - \frac{\eta}{2} \mathbb{E}[\|\nabla f(X_k)\|^2] + \frac{M\eta^2}{2L}

移项并累加 k=0k=0k1k-1,得

i=0k1E[f(Xi)2]2η(f0fk)+MηLk\sum_{i=0}^{k-1} \mathbb{E}[\|\nabla f(X_i)\|^2] \leq \frac{2}{\eta}(f_0 - f_k) + \frac{M\eta}{L}k

由于 fkff_k \geq fff 为下界),

i=0k1E[f(Xi)2]2η(f(x0)f)+MηLk\sum_{i=0}^{k-1} \mathbb{E}[\|\nabla f(X_i)\|^2] \leq \frac{2}{\eta}(f(x_0) - f) + \frac{M\eta}{L}k

两边同时除以 kk,并取最小值有

min0ik1E[f(Xi)2]1ki=0k1E[f(Xi)2]ηM+2L(f(x0)f)kη\min_{0 \leq i \leq k-1} \mathbb{E}[\|\nabla f(X_i)\|^2] \leq \frac{1}{k} \sum_{i=0}^{k-1} \mathbb{E}[\|\nabla f(X_i)\|^2] \leq \eta M + \frac{2L(f(x_0) - f)}{k\eta}

证毕。

六、强凸情形下的SGD收敛性#

1、假设#

  1. fjf_j LL-光滑,ff LL-光滑。
  2. ffγ\gamma-强凸函数,即 2γ(f(x)f(x))f(x)22\gamma (f(x) - f(x^*)) \leq \|\nabla f(x)\|^2 极小点 xx^* 唯一。
  3. 步长 αkη/L,  η(0,1]\alpha_k \equiv \eta/L, \; \eta \in (0,1]
  4. 有界方差:VAR(GkXk)M\operatorname{VAR}(G_k|X_k)\leq M

2、收敛性定理#

定理(SGD 强凸情形):

SGD 以 Q-线性速率收敛到残差: 设条件数 κ=L/γ\kappa = L/\gamma,则

E[f(Xk)]f(x)ηM2γ+(1ηκ)k[f(x0)f(x)ηM2γ]\mathbb{E}[f(X_k)] - f(x^*) \leq \frac{\eta M}{2\gamma} + \left(1 - \frac{\eta}{\kappa}\right)^k \left[f(x_0) - f(x^*) - \frac{\eta M}{2\gamma}\right]
  • kk \to \infty 时,极限误差为 ηM2γ\frac{\eta M}{2\gamma},依赖噪声和步长。

证明:

由基础引理(L-光滑且 γ\gamma-强凸):

E[f(Xk+1)]f(x)(1γαk)(E[f(Xk)]f(x))+ML(αk)22\mathbb{E}[f(X_{k+1})] - f(x^*) \leq (1 - \gamma \alpha_k)\left(\mathbb{E}[f(X_k)] - f(x^*)\right) + \frac{ML (\alpha_k)^2}{2}

αk=η/L\alpha_k = \eta/L,代入得

E[f(Xk+1)]f(x)(1γηL)(E[f(Xk)]f(x))+Mη22L\mathbb{E}[f(X_{k+1})] - f(x^*) \leq \left(1 - \frac{\gamma \eta}{L}\right)\left(\mathbb{E}[f(X_k)] - f(x^*)\right) + \frac{M\eta^2}{2L}

κ=L/γ\kappa = L/\gamma,则 1γηL=1ηκ1 - \frac{\gamma \eta}{L} = 1 - \frac{\eta}{\kappa},上式变为

E[f(Xk+1)]f(x)(1ηκ)(E[f(Xk)]f(x))+Mη22L\mathbb{E}[f(X_{k+1})] - f(x^*) \leq \left(1 - \frac{\eta}{\kappa}\right)\left(\mathbb{E}[f(X_k)] - f(x^*)\right) + \frac{M\eta^2}{2L}

递归展开(不等式迭代 kk 次):

E[f(Xk)]f(x)(1ηκ)k(f(x0)f(x))+Mη22Li=0k1(1ηκ)i\mathbb{E}[f(X_k)] - f(x^*) \leq \left(1 - \frac{\eta}{\kappa}\right)^k \left(f(x_0) - f(x^*)\right) + \frac{M\eta^2}{2L} \sum_{i=0}^{k-1} \left(1 - \frac{\eta}{\kappa}\right)^i

等比数列求和,i=0k1ri=1rk1r\sum_{i=0}^{k-1} r^i = \frac{1 - r^k}{1 - r},其中 r=1ηκr = 1 - \frac{\eta}{\kappa},所以

i=0k1(1ηκ)i=1(1ηκ)kηκ\sum_{i=0}^{k-1} \left(1 - \frac{\eta}{\kappa}\right)^i = \frac{1 - \left(1 - \frac{\eta}{\kappa}\right)^k}{\frac{\eta}{\kappa}}

代入得

E[f(Xk)]f(x)(1ηκ)k(f(x0)f(x))+Mη22L1(1ηκ)kηκ\mathbb{E}[f(X_k)] - f(x^*) \leq \left(1 - \frac{\eta}{\kappa}\right)^k \left(f(x_0) - f(x^*)\right) + \frac{M\eta^2}{2L} \cdot \frac{1 - \left(1 - \frac{\eta}{\kappa}\right)^k}{\frac{\eta}{\kappa}}

化简右侧第二项:

Mη22Lκη[1(1ηκ)k]=Mη2γ[1(1ηκ)k]\frac{M\eta^2}{2L} \cdot \frac{\kappa}{\eta} \left[1 - \left(1 - \frac{\eta}{\kappa}\right)^k\right] = \frac{M\eta}{2\gamma} \left[1 - \left(1 - \frac{\eta}{\kappa}\right)^k\right]

最终得

E[f(Xk)]f(x)Mη2γ+(1ηκ)k[f(x0)f(x)Mη2γ]\mathbb{E}[f(X_k)] - f(x^*) \leq \frac{M\eta}{2\gamma} + \left(1 - \frac{\eta}{\kappa}\right)^k \left[f(x_0) - f(x^*) - \frac{M\eta}{2\gamma}\right]

证毕。

分享

如果这篇文章对你有帮助,欢迎分享给更多人!

数据科学与工程优化(五)
https://www.laoguantx.cn/posts/datascienceandengineeringoptimization5/
作者
老官童鞋gogo
发布于
2025-07-23
许可协议
CC BY-NC-SA 4.0

部分信息可能已经过时

封面
Sample Song
Sample Artist
封面
Sample Song
Sample Artist
0:00 / 0:00