梯度下降法的收敛性证明
梯度下降法
梯度下降方法指:
通过求函数梯度的方式解决函数极值问题
即通过:
x1 = x-s*∇
迭代的方式求函数极值。
梯度下降定理
函数y =f(x)为凸函数:
则: x1 = x-s*∇时 f(x1) < f(x0) 或 f(x1)>f(x0) 一定成立。
∇指梯度,s指步长。
举例
如 y = x2
y = x2 是凸函数
当 x1 = x-s*∇时 s足够小时,f(x1) 一定 小于f(x0) ,即能量下降。
如 y = -x2
y = -x2 是凸函数
当 x1 = x-s*∇时 s足够小时,f(x1) 一定 大于f(x0) ,即能量上升。
证明定理
定理的证明关键在于函数是凸函数。
当函数为凸函数时函数满足Lipschitz连续性条件:
具体证明见:梯度下降 收敛性 证明
结论
如果使用梯度下降法应注意:
1.目标函数是否为凸函数
一般目标函数都不是标准的凸函数,但其在局部都有局部最优值,在局部一般满足凸函数。这样使用梯度下降法,能够求得局部最优解。
2. 注意函数的单增单减性
梯度下降法,能够递增和递减,要做好判断哪个是需要的,一般是希望目标函数最小,就要判断每次目标函数是否是在下降。
3. 梯度下降算法的关键问题是求步长的问题,一般使用线性搜索算法来确定。