牛顿法 防混淆 总结
作者:互联网
1) 牛顿法(最初,求的是根)
目的: 求 f(x)=0 的根
途径:
一元非线性方程 f(x)=0 为例,
对函数 f(x) 在 x0 处进行Taylor级数展开
f(x) = f(x0)+f'(x0)(x-x0)+o(x) ----(忽略o(x) 高次项 )
所以方程可写成
f(x0)+f'(x0)(x-x0) = 0 => x = x0 - f(x0) / f'(x0)
令x1=x.
是相比之前的x0更靠近真实解了. Why? 见下图。
用过两点 (x0,f(x0), (x1,0) 的直线代替f(x). 图上可见
x1,比x0 更加接近x*(最佳值)。
因此可以多重复几次上述过程,从而使得到的解非常接近准确值。所以,对于一元非线性方程,牛顿法的迭代公式为:
x(k+1) = x(k) - f(x(k)) / f’(x(k))
(代码实现,网上太多,。。。)
2) 牛顿法(一般,求的是最小值)
目的: 求 f(x)=0 的根
途径:
一元非线性方程 f(x)=0 为例,
对函数 f(x) 在 x0 处进行Taylor级数展开
f(x) = f(x0)+f'(x0)(x-x0)+1/2*f''(x0)(x-x0)^2+o(x) ----(忽略o(x) 高次项 )
求f(x)有:
f'(x)=0+f'(x0)+f"(x0)(x-x0)
而:f'(x)=0
所以:x-x0=-f'(x0)/f"(x0) =>x=x0--f'(x0)/f"(x0)
令x=x1.
所以 x(k+1) = x(k) - f'(x(k)) / f''(x(k))
对于多元:可以写成:
x(k+1) = x(k) - ∇f / ∇² f
3) 高斯牛顿法(一般,∇² f 不好求,所以用高斯牛顿法)
对于一个非线性最小二乘问题:
高斯牛顿的思想是把 [公式] 利用泰勒展开,取一阶线性项近似。
带入到(1)式:
对上式求导,令导数为0。
令
有:
标签:总结,混淆,方程,高斯,非线性,牛顿,x0,x1 来源: https://blog.csdn.net/flyso_80/article/details/121127137