https://zhuanlan.zhihu.com/p/46536960 (理解图会容易)
https://blog.csdn.net/songbinxu/article/details/79677948
拟牛顿法:DFP,BFGS
拟牛顿法实际上是用了一个正定矩阵来代替Hessian矩阵的逆矩阵,这样不仅拥有较快的收敛速度,而且通过一步步迭代更新大大减少了计算开销。
拟牛顿算法对于训练集不是很大的机器学习优化问题而言是一种十分高效的算法,学习率ε的确定方法完全类似于梯度下降法中学习率的确定方法。
牛顿法中的Hesse矩阵HH在稠密时求逆计算量大,也有可能没有逆(Hesse矩阵非正定)使牛顿法失效。
这个方法的基本思想是: 不用二阶偏导数而构造出可以近似海塞矩阵(或海塞矩阵的逆)的正定对称阵。不同的构造方法就产生了不同的拟牛顿法*。
(本质思想是改善牛顿法每次需要求解复杂的Hessian矩阵的逆矩阵的缺陷,它*使用正定矩阵来近似Hessian矩阵的逆,*从而简化了运算的复杂度)
注意拟牛顿法的 关键词: 不用算二阶导数,不用求逆
https://blog.csdn.net/songbinxu/article/details/79677948
牛顿法和梯度下降法有什么不同
牛顿法是一种在实数域和复数域上近似求解方程的方法。*方法使用函数f (x)的泰勒级数的前面几项来寻找方程*f (x) = 0的根。牛顿法最大的特点就在于它的收敛速度很快
牛顿法的优缺点总结:
优点:二阶收敛,收敛速度更快;但是仍是局部算法,梯度下降是一阶收敛
缺点:牛顿法是一种迭代算法,每一步都需要求解目标函数的Hessian矩阵的逆矩阵,计算比较复杂。
牛顿法就是用一个二次曲面去拟合你当前所处位置的局部曲面,而梯度下降法是用一个平面去拟合当前的局部曲面,通常情况下,二次曲面的拟合会比平面更好,所以牛顿法选择的下降路径会更符合真实的最优下降路径。