牛顿法和梯度下降法的学习
2018-03-20 本文已影响240人
碧影江白
牛顿法和梯度下降法的差别
牛顿法:二次逼近
梯度下降法:一阶逼近
牛顿法:对局部凸的函数找到极小值,对局部凹的函数找到极大值,对不凹不凸的函数可能找到鞍点。
梯度下降法:一般不会找到最大值,但同样可能会找到鞍点。
在初始值合理的条件下,
牛顿法的收敛速度>梯度下降法的收敛速度
牛顿法的计算难度更大(因为需要估计二阶导数)
泰勒展开式:https://baike.baidu.com/item/泰勒公式/7681487?fr=aladdin
即 其中牛顿法:
对f(x)函数进行二次逼近,即可以开方两次: 我们假设 g(x)是一个关于∆x的一元二次方程,我们知道一元二次方程式的最小值求法: 那么,g(∆x)的极值为: 此时f(x0+∆x)的极值为: 以此类推: 当f是一个多元函数时,牛顿法将会变为: 分子代表梯度(一阶矩阵推广的向量),分母代表Hession矩阵:
梯度下降法:
梯度下降法与牛顿法的区别在于梯度下降法是一阶算法。
牛顿法和梯度下降法的本质上都是对目标函数进行局部逼近,所以只能找到局部极值。