webbery的个人博客分享 http://blog.sciencenet.cn/u/webbery

博文

梯度下降法步长的取值范围

已有 12853 次阅读 2014-8-28 13:08 |个人分类:机器学习|系统分类:科研笔记

在梯度下降法中,我们往往需要设置一个合适的步长。但是有时步长设置太大,使得我们要估计的系数在迭代过程中不断增大,最后趋于无穷大,程序陷入死循环或溢出。下面的讨论给出了步长上限的一个估计,其中参数的迭代公式是(使用矩阵表示):

$\theta_{n+1}=\theta_{n}-\alpha X^{T}(X\theta_{n}-Y)$

其中 $\alpha$ 是步长。将这个公式变形一下,得到

$\theta _{n+1}=F(\theta_{n})=(I-\alpha X^{T}X)\theta_{n}+\alpha X^{T}Y$

可以看出,对 $\theta$ 的每个分量, $\alpha$ 都是相同的。因此后面我们可以用分量来进行讨论,这时候上面的公式就是一个标量公式。

对于这个迭代, $\theta$ 要么发散,要么收敛于一个稳定点,要么在多个稳定点中做周期震荡(即周期N)。因此我们可以计算其收敛点,并计算其收敛条件。

当 $\theta$ 收敛时,它是一个稳定点,即 $\theta = F(\theta)$ ,解出 $\theta =(X^{T}X)^{-1}X^{T}Y$ ,与最小二乘法给出的结果一致。

按照非线性理论中的稳定性条件要求: $|{F}'(\theta)|<1$ ,即 $|I-\alpha X^{T}X|<1$ ,因此 $0<\alpha <2(|X^{T}X|)^{-1}$ (这里使用了标量来求解)。

所以,当步长超出这个范围, $\theta$ 是不稳定的,很容易导致发散。



https://blog.sciencenet.cn/blog-477629-822983.html

上一篇:一个不错的物理学习交流论坛
下一篇:以Logistic回归为例,使用广义线性模型对数据拟合的步骤
收藏 IP: 202.122.36.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-12-19 03:10

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部