1 背景知识

1.1 泰勒展开

a. 目的

找到复杂函数的局部线性近似,并使用多项式函数的形式进行表示。

b. 原因

多项式函数易于计算,如求值、求导、求积分。。。并且易于对比和理解,相比于cos等函数。

c. 方法

前提:
函数的一阶导数几何意义:函数在某点附近的函数值变化率,即为切线的斜率;
函数的二阶导数几何意义:函数在某点附近的切线斜率的变换率,即曲线的弯曲方向和程度;
如果两条曲线f(x)和g(x)在某点x处的值一致,且二者在此处的切线相同,函数曲线的弯曲程度也相同,那么我们可以认为在该点处两条曲线是“近似”的。

思路:
我们使用一个k阶多项式去对一个余弦函数关于Newton法及其改进方法 - 图1进行近似,令多项式为
关于Newton法及其改进方法 - 图2
按照前提中的思路,比如为了使得函数关于Newton法及其改进方法 - 图3与余弦函数在点关于Newton法及其改进方法 - 图4附近足够相似,要求函数值一致,且切线和弯曲程度也一致,得
关于Newton法及其改进方法 - 图5
由前三个约束式可知关于Newton法及其改进方法 - 图6,因此关于Newton法及其改进方法 - 图7关于Newton法及其改进方法 - 图8关于Newton法及其改进方法 - 图9处的一个合理的近似。当然,由于余弦函数可以无限次进行求导,也就是为了逼近关于Newton法及其改进方法 - 图10,我们可以不断用高阶导数的一致性来约束关于Newton法及其改进方法 - 图11,从而提高近似程度。
截屏2020-12-28 下午8.49.17.png
注意到,多项式中任意k次项的参数关于Newton法及其改进方法 - 图13并不受到更高阶项的影响,比如高阶项关于Newton法及其改进方法 - 图14,那么在k阶导数关于Newton法及其改进方法 - 图15中,该高阶项对应于关于Newton法及其改进方法 - 图16,这一项在关于Newton法及其改进方法 - 图17处的值也为0,因此该高阶项会被“消去”。为了使得我们的多项式能在任意点对目标函数进行近似,将关于Newton法及其改进方法 - 图18修改为如下形式
关于Newton法及其改进方法 - 图19
其中关于Newton法及其改进方法 - 图20表示目标函数需要被近似表示的位置。对于任意的函数,只要其在任意点都能取到k阶导数,那我们就能使用这样一个多项式对其进行近似,因为当我们知道了这个函数的所有高阶导数,那我们几乎知道了关于这个函数一切信息。这被称为(k阶)泰勒展开式,通用形式如下
关于Newton法及其改进方法 - 图21
展开式里每项加入的阶乘项是为了多阶求导带来的系数累乘。因为假设我们要用这样一个r阶多项式函数关于Newton法及其改进方法 - 图22在点关于Newton法及其改进方法 - 图23处近似某目标函数关于Newton法及其改进方法 - 图24,由于要求二者的k阶导相等,那么关于Newton法及其改进方法 - 图25,注意到对于r阶的多项式函数求k次导后,低于k阶的项被消去了,而高于k阶的项由于关于Newton法及其改进方法 - 图26也被消除,因此有关于Newton法及其改进方法 - 图27,因此我们令关于Newton法及其改进方法 - 图28
截屏2020-12-28 下午9.00.07.png
若多项式是有限个项的,则为泰勒多项式,若多项式被定义为无穷项的,则被称为泰勒级数,后者涉及到收敛问题。若某个函数泰勒级数是发散的,则在任意点处的泰勒级数会有一个收敛半径,而一旦泰勒级数的泰勒级数是收敛的,随着级数增大,在任意点处的泰勒展开式能无限逼近整个目标函数曲线!比如函数关于Newton法及其改进方法 - 图30
截屏2020-12-28 下午9.37.39.png

也可以从微积分几何含义的角度来看泰勒展开式(详见)。我们可将函数关于Newton法及其改进方法 - 图32看作其导数关于Newton法及其改进方法 - 图33的“面积函数”,对于某个点a,我们增加一个微小量关于Newton法及其改进方法 - 图34,使其达到附近的点x。则新的面积函数可以按如下方式进行表示,不难发现这与泰勒展开式完全一致。注意这里所画出曲线对应的函数是关于Newton法及其改进方法 - 图35
截屏2020-12-28 下午9.41.33.png

2 Newton法

2.1 问题

求使得函数关于Newton法及其改进方法 - 图37达到最小值的点关于Newton法及其改进方法 - 图38

2.2 基本假设

关于Newton法及其改进方法 - 图39关于Newton法及其改进方法 - 图40上具有连续的二阶偏导数,并且其Hessian矩阵关于Newton法及其改进方法 - 图41正定(正定矩阵是可逆的),则可使用Newton法进行迭代求解。

2.3 解决思路

假设当前点位于关于Newton法及其改进方法 - 图42,在该点处对函数关于Newton法及其改进方法 - 图43进行二阶展开近似,即将关于Newton法及其改进方法 - 图44关于Newton法及其改进方法 - 图45处使用Taylor公式进行展开,保留至第三项
关于Newton法及其改进方法 - 图46
其中关于Newton法及其改进方法 - 图47为在点关于Newton法及其改进方法 - 图48处函数关于Newton法及其改进方法 - 图49的一阶偏导向量,关于Newton法及其改进方法 - 图50则为二阶偏导矩阵,即Hessian矩阵。对此近似表达式求梯度,并令其为0,得到
关于Newton法及其改进方法 - 图51
若矩阵关于Newton法及其改进方法 - 图52可逆,则有
关于Newton法及其改进方法 - 图53

2.4 几何解释

函数关于Newton法及其改进方法 - 图54过点关于Newton法及其改进方法 - 图55的等值面为
关于Newton法及其改进方法 - 图56
我们在点关于Newton法及其改进方法 - 图57处用一个与该等值曲面相切的二次曲面来进行近似表示,即为二阶近似展开式。且与梯度方向相互垂直。

3 具体算法

3.1 算法步骤

3.2 优缺点分析

  1. 可以在理论上证明,Newton算法具有二阶收敛性(局部,即在最优点附近);

  2. 需计算f(x)的二阶导数(对复杂函数不容易);

  3. 对正定二次函数,迭代一次即可得到极小点。

3.3 code

TODO

4 改进的Newton法

TODO