文章目录
- 牛顿法求解函数零点
- 基本思想
- 形象理解
- 牛顿法求解函数极值点
- 一维情况
- 高维情况
- 求极值点时与梯度下降法比较
- 相同点
- 不同点
- Reference
牛顿法求解函数零点
基本思想
设有一个连续可导函数 ,为了求解方程,可采用这样的方法来近似求解,因为在处的泰勒展开式为:
考虑到一次方程容易解,而二次以及以上高次方程不一定有解,取泰勒展开式的线性部分来近似有:
若不等于0,将代入上式可得:
称是方程的一次近似根,由此得到一个n次迭代式:
利用求解时,先对方程的根猜一个初始的估计值,可以证明如果是连续的,并且待求的零点是孤立的,那么在零点周围存在一个区域,只要初始猜测值位于这个邻近区域内,进行多次迭代后那么牛顿法必定收敛。
形象理解
如上图所示,过做的切线,切线与 轴交点为 , 过继续做的切线,与 轴交点为 …不断迭代, 的值将趋近于方程的根。
牛顿法求解函数极值点
一维情况
对于的泰勒展开式,若取到二次项来近似,则:
两边对求导,有:
函数的极值点满足,代入上式中,有:
由此可以得到一个求解方程的迭代式:
高维情况
上述描述的是自变量是一维的情况,当是一个多维向量时,同样有:
其中是在处的梯度,是在处的海森矩阵(高维函数的二阶导)。
当然,为了在迭代的时候使选取的落在导数为0的点附近,记
给加一个类似于学习率的系数有:
每次迭代时需要选择合适的。
求极值点时与梯度下降法比较
相同点
和梯度下降法一样,牛顿法寻找的也是导数为0的点,这不一定是极值点,因此会面临局部极小值和鞍点问题。
不同点
与梯度下降法相比,牛顿法求解函数极值点时需要求解海森矩阵的逆矩阵,当的维度较高时,这个计算过程会很费时,不如梯度下降法快。