本来这周计划写下逻辑回归的学习笔记,但是其中用到了最优化对数似然函数,因此决定先复习下梯度方法和拟牛顿法。本节先从纯数学的角度总结下梯度下降法。
一、柯西-施瓦茨不等式
对于
Rn
中的任意两个向量
x
和
y
, 有:
成立。当且仅当对于某个 α∈Rn,有x=αy时,该不等式的等号成立。
二、梯度下降法
函数
f:Rn→R
水平集的概念。水平集是指能够满足
f(x)=c
的所有
x
组成的集合,其中
如果函数
f
在
若令 d=▽f(x)||▽f(x)|| ,则有:
因此,可以看出梯度方向 ▽f(x) 就是函数 f 在
令
x(0)
作为初始搜索点,并沿着梯度负方向构造一个新点
x(0)−α▽f(x(0))
,由泰勒定理可得:
因此,如果 ▽f(x(0))≠0 , 那么当 α>0 足够小时,有
给定一个搜索点 x(k) ,由此点出发,根据向量 −αk▽f(x(k))) 指定的方向和幅度运动,构造一个新点 x(k+1),αk>0, 称为步长,那么迭代公式如下:
这称为梯度下降方法。在搜索过程中,梯度不断变化,当接近极小点的时候梯度应该趋于0.可以设置很小的步长,这时计算量比较大,每次梯度都要重新计算;也可以设置很大的步长,这样,计算量会小一些,但是会在极小点附近产生锯齿状的收敛路径。下面会继续总结梯度下降法中的最速下降法。