Newton's method 分析

大家都知道对于合理的函数和合理的值域牛顿迭代法是二次收敛(quadratic covergence)的(收敛速度定义见 https://en.wikipedia.org/wiki/Rate_of_convergence ).当然合理的函数是什么函数呢..?似乎需要f'平滑且f'(root)!=0..然而这个界其实不太靠谱啦..总有人觉得对于任意函数都有quadratic convergence..(最典型的代表像我..)那么我们现在来分析一个bound出来..

给定一个大部分地方可导的函数f(x)[我们的要求是至少对于牛顿迭代不会失败],我们设\(f(\alpha)=0\),选择一个初始值\(x_0\).我们发现,对于寻求函数\(f(x)=x^2\)的根已经不是二次收敛了,究其原因是因为\(f'(\alpha=0)=0\).我们做一个合理的假设\(f'(\alpha)\not=0\),设\(f'(\alpha)=t\).一个合理的区间\([a,b]\)需要\(\alpha\in [a,b]\)\(x\in [a,b],f(x)\)单增.为什么要这么做是因为这种区间可以通过多点求值与求导求解得到.

现在我们观察:

\[\begin{align*} y_t &= f(x_t) \\ z_t &= f'(x_t) \\ x_1 &= x_0 - \frac{y_0}{z_0} \\ y_1 &\le y_0-(x_0-x_1)z_1 \\ &= y_0 - \frac{y_0}{z_0}z_1 \\ &= y_0\left( 1-\frac{z_1}{z_0} \right) \\ & \vdots \\ y_t &\le y_{t-1}\left( 1-\frac{z_t}{z_{t-1}} \right) \end{align*} \]

注意到我们有\(y_t\ge 0\),那么我们再给公式合起来:

\[\begin{align*} q_t &= \frac{z_t}{z_{t-1}} \\ y_t &= y_{t-1}(1-q_t) \\ \frac{y_t}{y_0} &= \prod^{t}_{i=1}(1-q_t) \\ \frac{z_t}{z_0} &= \prod^{t}_{i=1}q_t \end{align*} \]

现在我们给这个斜率加上一个bound,使得\(\frac{z_t}{z_0}=k\),每个\(z_i \in (0,1)\),我们可以发现\(\frac{y_t}{y_0}\le \left( 1-\sqrt[t]{k} \right)^t\)

这就是最后的结果啦..谁给我提供一个这个式子的简化啊TAT..

posted @ 2016-10-15 22:37  zball  阅读(270)  评论(0编辑  收藏  举报