数学知识--Methods for Non-Linear Least Squares Problems(第三章)

Methods for Non-Linear Least Squares Problems 非线性最小二乘问题的方法
2nd Edition, April 2004
K. Madsen, H.B. Nielsen, O. Tingleff

3 Non-linear least squares problems 非线性最小二乘问题
接下来我们主要关注非线性最小二乘问题的讨论。给定一个向量函数 f: Rn --> Rm 其中 m>=n . 我们希望最小化 ||f(x)||
在这里插入图片描述
最小二乘问题可以通过普通优化算法来求解,但是这里我们介绍一类特别算法,其更加的高效。多数情况下,它们收敛的速度好于线性收敛,有时甚至达到二次收敛,但是它们不需要计算二阶导数。在算法的推导中我们需要 F 的导数计算公式,假定 f 的泰勒展开如下:
在这里插入图片描述
在这里插入图片描述

3.1. The Gauss–Newton Method
这个方法是下面我们将要介绍的方法的基础。它的实现依赖于向量函数的一阶导数。在特殊情况下,它能够给出二阶收敛,正如牛顿方法在广义优化问题中的表现。泰勒展开如下
在这里插入图片描述
将上式带入(3.1)得到
在这里插入图片描述
L’(0)=JTf=F’(x)
如果 J has full rank,那么 L(h) has a unique minimizer: L’(h_gn)=0
在这里插入图片描述
Newton’s method 和 Gauss-Newton method 的区别
两者的 search directions 分别如下所示:
在这里插入图片描述
区别在于:
在这里插入图片描述
所以当 f(x*)=0 则 对 离x* 很近的 x 来说 L’’(h) 约等于F’’(x)
we get quadratic convergence also with the Gauss-Newton method

3.2. The Levenberg–Marquardt Method
在这里插入图片描述
damping parameter µ 有几个效果:
a)对所有 µ>0 参数矩阵是正定的,所以这保证了 h_lm 是一个下降方向

b) 对于较大的 µ 值 我们得到
在这里插入图片描述
a short step in the steepest descent direction。 This is good if the current iterate is far from the solution

c) 当 µ 值 很小时, h_lm == h_gn, 在迭代的后期,这是一个很好的步长,当 x 离 x* 很近的时候
If F(x* )=0 (or very small), then we can get (almost) quadratic final convergence

所以 damping parameter 影响 方向和 步长大小。这让我们拥有两种方法的优势。

在这里插入图片描述

https://blog.csdn.net/pi9nc/article/details/11922835
问题:为什么通常牛顿法比梯度下降法能更快的收敛?

解答:牛顿法是二阶收敛,梯度下降是一阶收敛,所以牛顿法就更快。如果更通俗地说的话,比如你想找一条最短的路径走到一个盆地的最底部,梯度下降法每次只从你当前所处位置选一个坡度最大的方向走一步,牛顿法在选择方向时,不仅会考虑坡度是否够大,还会考虑你走了一步之后,坡度是否会变得更大。所以,可以说牛顿法比梯度下降法看得更远一点,能更快地走到最底部。

根据wiki上的解释,从几何上说,牛顿法就是用一个二次曲面去拟合你当前所处位置的局部曲面,而梯度下降法是用一个平面去拟合当前的局部曲面,通常情况下,二次曲面的拟合会比平面更好,所以牛顿法选择的下降路径会更符合真实的最优下降路径。
在这里插入图片描述

11

Levenberg-Marquardt-Fletcher算法是一种用于非线性最小二乘问题的迭代优化算法。该算法通过在每次迭代中结合高斯牛顿法和梯度下降法的优点,来求解非线性最小二乘问题。 该算法的基本思想是通过不断调整模型参数来提高目标函数的拟合度。在每一轮迭代中,算法根据当前参数估计计算目标函数的梯度矩阵和雅可比矩阵,然后使用这些矩阵来更新参数估计。更新参数的过程是通过调整一个称为 "衰减因子" 的参数,来平衡高斯牛顿法和梯度下降法对参数的调整力度。 具体地说,算法从初始参数值开始,计算目标函数的误差平方和和梯度矩阵。然后,根据衰减因子的大小来判断是使用高斯牛顿法还是梯度下降法。如果衰减因子较大,则使用梯度下降法进行参数调整;如果衰减因子较小,则使用高斯牛顿法进行参数调整。通过不断迭代调整参数,算法逐渐收敛到最优解。 Levenberg-Marquardt-Fletcher算法具有全局收敛性、快速收敛速度和较好的数值稳定性等优点。它在解决非线性最小二乘问题中广泛应用,比如曲线拟合、参数估计等领域。但是,该算法对初始参数的选择敏感,需要借助先验知识或试验来确定初始参数。 总之,Levenberg-Marquardt-Fletcher算法是一种强大的迭代优化算法,可以用于解决非线性最小二乘问题,通过不断调整模型参数来提高目标函数的拟合度和精度。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值