最优化理论与方法-牛顿迭代法后续

最优化理论与方法-牛顿迭代法后续

关注微信公众号【Microstrong】,我现在研究方向是机器学习、深度学习,分享我在学习过程中的读书笔记!一起来学习,一起来交流,一起来进步吧!

本文同步更新在我的微信公众号里,地址:https://mp.weixin.qq.com/s?__biz=MzI5NDMzMjY1MA==&mid=2247484108&idx=1&sn=dbafbcd5cf6db99c7c2aa1b9eb37c3ba&chksm=ec653349db12ba5fc72a2c951cb9224e3b3f856efb89b7561386dc083fe8cf05bd8e61d3dc14#rd


目录:

(1)牛顿迭代法在数学中求解方程的根。

(2)最优化理论与方法中牛顿迭代法应用。

(3)对Hessian矩阵的深入讨论。

(4)牛顿法与梯度下降法的区别。

(一) 牛顿迭代法在数学中求解方程的根

  上一篇文章《最优化理论与方法-牛顿迭代法》中,主要讲解了牛顿迭代法在数学中求解方程根的主要内容。对应的主要内容是(1)简介牛顿迭代法。(2)牛顿迭代法的公式。(3)牛顿迭代法的收敛性。(4)牛顿法的改进。没有看过的同学,可以再去看看《最优化理论与方法-牛顿迭代法》这篇文章。但是,在这篇文的最后一小节(5)牛顿法和梯度下降法的区别中,我比较了在最优化理论与方法中牛顿迭代法和梯度下降法的区别,但是遗留了两个问题:

(1)数学中牛顿迭代法和最优化理论与方法中牛顿迭代法的区别?

(2)最优化理论与方法中,牛顿迭代法为什么要计算海森矩阵?

(二) 最优化理论与方法中牛顿迭代法应用

  首先,在我的上一篇文章《最优化理论与方法-牛顿迭代法》中,我们推出了牛顿迭代法的基本公式:

  最优化理论与方法-牛顿迭代法后续

上面(1)式是为了求解f(x)=0的时候,x的值。但是在最优化理论与方法中,我们用的不是上面(1)式。

  在机器学习的最优化理论与方法中,求解最优化问题时,我们一般时为了求解minf(x),即f'(x)=0,极值点x的值。也就是实际迭代中,我们用到的是(2)式。

    最优化理论与方法-牛顿迭代法后续

  我们有了在机器学习中最优化理论与方法的牛顿迭代法的推导公式(2)式。那么,我们再来思考一下,(2)式的由来。我们是求f'(x)=0的根。把f(x)泰勒展开,展开到2阶形式。

  最优化理论与方法-牛顿迭代法后续

这个(3)式是成立的,当且仅当最优化理论与方法-牛顿迭代法后续无限趋近于0时。此时,(3)式中:

 最优化理论与方法-牛顿迭代法后续

我们对最优化理论与方法-牛顿迭代法后续求导,为什么对最优化理论与方法-牛顿迭代法后续求导呢?因为对最优化理论与方法-牛顿迭代法后续求导可以得到最优化理论与方法-牛顿迭代法后续的表达式。得到下面公式(5):

  最优化理论与方法-牛顿迭代法后续

求解最优化理论与方法-牛顿迭代法后续得:

 最优化理论与方法-牛顿迭代法后续

得到迭代公式(2)。从公式(2)中,我们可以看出,最优化理论与方法-牛顿迭代法后续最优化理论与方法-牛顿迭代法后续之间的差距就是最优化理论与方法-牛顿迭代法后续

   最优化理论与方法-牛顿迭代法后续

注意:这就是最优化理论与方法中,牛顿法是要求二阶导数的,并且还要讨论二阶收敛性。经过上面的解释,大家对牛顿迭代法二阶收敛应该有比较直观的理解吧!

(三) 对Hessian矩阵的深入讨论

  对于高维函数,用牛顿法求极值也是(2)式这个形式,只不过这里的f'(x)和f''(x)都变成了向量矩阵。而且我们可以想象一下,高维函数二阶导数有多个,如下:

假设:f(X)是关于x1、x2、x3、… …、xn的高维函数映射,那么f'(x)如公式(7)所示:

  最优化理论与方法-牛顿迭代法后续

那么,f''(x)就是Hessian矩阵,定义如公式(8)所示:

 最优化理论与方法-牛顿迭代法后续

高维情况下,迭代公式如下:

最优化理论与方法-牛顿迭代法后续

  高维情况依然可以用牛顿迭代求解,但是问题是Hessian矩阵引入的复杂性,使得牛顿迭代求解的难度大大增加,但是已经有了解决这个问题的办法就是拟牛顿法(Quasi-Newton method),拟牛顿法的本质思想是改善牛顿法每次需要求解复杂的Hessian矩阵的逆矩阵的缺陷,它使用正定矩阵来近似Hessian矩阵的逆,从而简化了运算的复杂度。感兴趣的同学,可以接着了解一下拟牛顿法。

(1)Hessian矩阵的对称性

如果函数最优化理论与方法-牛顿迭代法后续在D区域内二阶连续可导,那么最优化理论与方法-牛顿迭代法后续Hessian矩阵最优化理论与方法-牛顿迭代法后续 在D内为对称矩阵

原因:如果函数最优化理论与方法-牛顿迭代法后续的二阶偏导数连续,则二阶偏导数的求导顺序没有区别,即

最优化理论与方法-牛顿迭代法后续

则对于矩阵最优化理论与方法-牛顿迭代法后续,有最优化理论与方法-牛顿迭代法后续,所以最优化理论与方法-牛顿迭代法后续为对称矩阵。

(2)利用海森矩阵判定多元函数的极值

最优化理论与方法-牛顿迭代法后续

(四) 牛顿法和梯度下降法的区别

1.牛顿法优点:

在最优化问题中,牛顿法比梯度下降法求解需要的迭代次数更少。

原因:牛顿法是二阶收敛,梯度下降是一阶收敛,所以牛顿法就更快。如果更通俗地说的话,比如你想找一条最短的路径走到一个盆地的最底部,梯度下降法每次只从你当前所处位置选一个坡度最大的方向走一步,牛顿法在选择方向时,不仅会考虑坡度是否够大,还会考虑你走了一步之后,坡度是否会变得更大。所以牛顿法比梯度下降法看得更远一点,能更快地走到最底部。根据wiki上的解释如图1所示,从几何上说,牛顿法就是用一个二次曲面去拟合你当前所处位置的局部曲面,而梯度下降法是用一个平面去拟合当前的局部曲面,通常情况下,二次曲面的拟合会比平面更好,所以牛顿法选择的下降路径会更符合真实的最优下降路径。红色的牛顿法的迭代路径,绿色的是梯度下降法的迭代路径。

最优化理论与方法-牛顿迭代法后续

1:牛顿法与梯度下降法的区别

2.牛顿法缺点:

1对目标函数有严格的要求,必须有连续的一、二阶偏导数,海森矩阵必须是正定的。

2计算量大,除计算梯度外,还需要计算二阶偏导矩阵及其逆矩阵。

注意:这一部分内容,我在上篇文章《最优化理论与方法-牛顿迭代法》中也提到了。