高斯牛顿过程,何时使用
Kong Liangqian Lv6

高斯牛顿法应用

求根

高斯牛顿法可以用于求函数$f(x)$ 根的一个方法。对于任何一个函数,他都可以写成如下方式

那么$F(x)$的最小值也就是当$x=x_0$时,$F(x)=0$的情况,$x_0$也就是$f(x)$的根

拟合

当有一组观测数据$(x_i,y_i)$,现在把他拟合成

我们的目的是使得$(x_i,y_i)$尽可能的都落在函数y上,最完美的情况,每一个点都在线上,完美的拟合。因此我们需要使得每一个$|y-y_i|$最小。可以写成如下形式

即$F(a,b,c)=\min||f(a,b,c)||^2$,其中$f(a,b,c)=y_i-\exp(ax^2+bx+c)$

这相当于求$f(a,b,c)=0$时,三个未知量的值。即求根

高斯牛顿过程

高斯牛顿是一个迭代法,每一次迭代都找到下一个x,使得这个x的走向让整个F(x)的走向为减小的方向(最小也就是0)。

最后目标是找到一个$x_0$,使得$f(x_0)=0$,那么最后一步的前一步则为有一个$x_1$, 使得$f(x_1+\Delta x)=f(x_0)=0$。因此这个问题也就可以转换为

高斯牛顿法的中心思想是把中间的$f(x+\Delta x)$进行一阶泰勒展开。

接下来的过程可以参考网上大伙儿推导过程了。譬如https://zhuanlan.zhihu.com/p/42383070

推导的过程几个需要注意的地方,当J 和 x 都是矢量的时候

  • $\partial (Jx)/\partial x=J^T$
  • $J^Tx$是一个标量,$(J^Tx)^T=J^Tx$
 Comments