一、随机梯度下降法(SGD)背景
许多机器学习与数据科学中的目标函数都具有求和结构:
$$ \min_{x \in \mathbb{R}^n} f(x) = \frac{1}{m} \sum_{j=1}^{m} f_j(x) $$
例如,$f_j(x) = \|a_j^T x - y_j\|^2$,$(a_j, y_j)$ 是数据点,$m$ 很大。
标准梯度下降法每步需计算:
$$ \nabla f(x_k) = \frac{1}{m} \sum_{j=1}^m \nabla f_j(x_k) $$
计算复杂度高达 $O(mn)$,昂贵且不适合大规模问题。因此我们考虑近似计算梯度。
二、随机梯度与SGD算法
1、小批量梯度与期望
定义:对任意索引集 $S = \{j_1, ..., j_p\}$,可定义小批量目标和梯度:
$$ 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) $$
若 $j_\ell$ 独立均匀采样自 $\{1, ..., m\}$,则
$$ \mathbb{E}[\nabla f_S(x)] = \nabla f(x) $$
即小批量梯度是全梯度的无偏估计。
2、SGD算法流程
- 给定初始点 $X_0$(可随机)。
对 $k=0,1,2,\ldots$ 重复:
- 随机采样 $S_k=\{j_1, ..., j_{p_k}\}$,每个 $j_\ell$ 独立采自 $\{1,...,m\}$
- $G_k = \nabla f_{S_k}(X_k)$
- $X_{k+1} = X_k - \alpha_k G_k$
- 步长 $\alpha_k$ 可固定或动态调整,$p_k$ 常常取1(单样本),也可取小批量。
由于 $\nabla f(X_k)^T (-G_k)$ 不一定 $<0$,每步不保证严格下降,因此分析期望下降。
三、条件期望与马尔可夫性质
- 记 $\mathbb{E}_k[Y]$ 为对 $(X_0, S_0,\ldots,S_k)$ 的期望。
- $X_{k+1}$ 仅依赖于 $X_k$ 和 $S_k$,是马尔可夫过程。
- 有 $\mathbb{E}[G_k | X_k] = \nabla f(X_k)$。
四、数值举例
1、二分类问题(MNIST 4 vs 9)
目标函数:
$$ \min_{x \in \mathbb{R}^n} \frac{1}{m} \sum_{i=1}^m (a_i^T x - y_i)^2 $$
其中 $y_i=1$(数字9),$y_i=-1$(数字4)。
SGD设置:$\alpha_k=0.001$,$|S_k|=1$。数值结果显示目标减少但后期有波动(噪声地板,noise floor)。
2、一般化SGD
更一般形式为:
$$ f(x) = \mathbb{E}_\xi[F(x,\xi)] $$
每步采样 $\xi_k$,取 $G_k = \nabla_x F(X_k, \xi_k)$。同理,
$$ \mathbb{E}_{\xi_k}[\nabla_x F(X_k, \xi_k)|X_k] = \nabla f(X_k) $$
五、L-光滑情形下的SGD收敛性
1、假设
- 每个 $f_j$ 都是 $L$-光滑函数 $\Rightarrow f$ 也是 $L$-光滑。
存在 $M>0$,使得
$$ \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 $$
即条件方差有界。
证明:
由于 $G_k = \nabla f_{S_k}(X_k)$ 是对样本集 $S_k$ 的梯度均值,且每个 $j_\ell$ 独立均匀采样自 $\{1, ..., m\}$,我们有
$$ \mathbb{E}[G_k | X_k] = \nabla f(X_k) $$
计算条件方差:
$$ \operatorname{VAR}(G_k|X_k) = \mathbb{E}[\|G_k - \nabla f(X_k)\|^2 | X_k] $$
对于单样本($|S_k|=1$),
$$ \operatorname{VAR}(G_k|X_k) = \frac{1}{m} \sum_{j=1}^m \|\nabla f_j(X_k) - \nabla f(X_k)\|^2 $$
若每个 $\|\nabla f_j(x)\|$ 在所有 $x$ 上有界,即存在 $C>0$ 使得 $\|\nabla f_j(x)\| \leq C$,则
$$ \operatorname{VAR}(G_k|X_k) \leq 4C^2 $$
因此,若每个分量梯度有界,则条件方差有界,满足假设2。
2、关键引理:期望过估计(Overestimation in expectation)
引理:
在上述假设下,
$$ \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] $$
若进一步有条件方差界 $M$,则
$$ \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} $$
- 当 $\alpha_k$ 足够小,右侧为严格下降。
证明:
由 $L$-光滑性,
$$ f(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 $$
对 $G_k$ 条件期望,利用 $\mathbb{E}[G_k|X_k] = \nabla f(X_k)$,由 $L$-光滑性,有
$$ f(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 $$
对 $S_k$ 条件期望(即对 $G_k$ 关于 $X_k$ 的条件期望):
$$ \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] $$
由于 $\mathbb{E}[G_k|X_k] = \nabla f(X_k)$,代入得
$$ \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-光滑情况下)
定理:
设 $f$ 有下界 $f$,满足上述假设。SGD 用定步长 $\alpha_k \equiv \eta/L$,$\eta \in (0,1]$,则
$$ \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} $$
即噪声存在,$\|\nabla f(X_k)\|^2$ 只收敛到 $\eta M$,无法无限趋近于零(称为noise floor)。
证明:
由关键引理,
$$ \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} $$
取 $\alpha_k \equiv \eta/L$,其中 $\eta \in (0,1]$,则
$$ \frac{L\alpha_k}{2} - 1 = \frac{\eta}{2} - 1 \leq 0 $$
因此,
$$ \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} $$
对 $X_k$ 取全期望,记 $f_k = \mathbb{E}[f(X_k)]$,有
$$ f_{k+1} \leq f_k - \frac{\eta}{2} \mathbb{E}[\|\nabla f(X_k)\|^2] + \frac{M\eta^2}{2L} $$
移项并累加 $k=0$ 到 $k-1$,得
$$ \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 $$
由于 $f_k \geq f$($f$ 为下界),
$$ \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 $$
两边同时除以 $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、假设
- $f_j$ $L$-光滑,$f$ $L$-光滑。
$f$ 是 $\gamma$-强凸函数,即
$$ 2\gamma (f(x) - f(x^*)) \leq \|\nabla f(x)\|^2 $$
极小点 $x^*$ 唯一。
- 步长 $\alpha_k \equiv \eta/L, \; \eta \in (0,1]$
- 有界方差:$\operatorname{VAR}(G_k|X_k)\leq M$
2、收敛性定理
定理(SGD 强凸情形):
SGD 以 Q-线性速率收敛到残差:
设条件数 $\kappa = L/\gamma$,则
$$ \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] $$
- $k \to \infty$ 时,极限误差为 $\frac{\eta M}{2\gamma}$,依赖噪声和步长。
证明:
由基础引理(L-光滑且 $\gamma$-强凸):
$$ \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} $$
取 $\alpha_k = \eta/L$,代入得
$$ \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} $$
记 $\kappa = L/\gamma$,则 $1 - \frac{\gamma \eta}{L} = 1 - \frac{\eta}{\kappa}$,上式变为
$$ \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} $$
递归展开(不等式迭代 $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} \sum_{i=0}^{k-1} \left(1 - \frac{\eta}{\kappa}\right)^i $$
等比数列求和,$\sum_{i=0}^{k-1} r^i = \frac{1 - r^k}{1 - r}$,其中 $r = 1 - \frac{\eta}{\kappa}$,所以
$$ \sum_{i=0}^{k-1} \left(1 - \frac{\eta}{\kappa}\right)^i = \frac{1 - \left(1 - \frac{\eta}{\kappa}\right)^k}{\frac{\eta}{\kappa}} $$
代入得
$$ \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}} $$
化简右侧第二项:
$$ \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] $$
最终得
$$ \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://blog.6uu.us/
头像图片url:https://images.6uu.us/20250511114301488.JPG
描述:科技激荡人文,洞见智慧本真。
站点截图:https://img.z4a.net/images/2025/02/16/2025-02-16-14.08.18.png
我的博客换域名了,刚备案下来,请将墨冢这个改一下,感谢。
名称:异数
链接:https://www.yishu.pro/
描述:笔落惊风雨,诗成泣鬼神。
头像:https://www.yishu.pro/img/logo.jpg链接已加好:https://www.yishu.pro/index.php/links.html
对了,博客之前的友链,现已更名。
原名:春花秋月
新名:我的飛鳥集
麻烦有空更改呢~