用于非线性最小二乘曲线拟合问题的Levenberg-Marquardt方法外文翻译资料

 2022-10-31 02:10

英语原文共 9 页,剩余内容已隐藏,支付完成后下载完整资料


用于非线性最小二乘曲线拟合问题的Levenberg-Marquardt方法

亨利·加文

土木与环境工程系

杜克大学

2016年5月4日

摘 要

Levenberg-Marquardt方法是用于解决非线性最小二乘问题的标准技术。通过最小化数据点和函数之间的误差的平方和,将参数化函数拟合到一组测量数据点时,会出现最小二乘问题。当函数在参数中不是线性时,出现非线性最小二乘问题。非线性最小二乘问题涉及对参数值的迭代改进,以减少函数和测量数据点之间的误差平方和。Levenberg-Marquardt曲线拟合方法实际上是两种最小化方法的组合:梯度下降法和高斯牛顿法。在梯度下降法中,通过更新最速下降方向的参数来减小平方误差的和。在高斯牛顿法中,通过假设最小二乘函数是局部二次方程,并求出二次方的最小值来减小平方误差的和。当参数远离其最优值时,Levenberg-Marquardt方法更像梯度下降法,当参数接近其最优值时,其行为更像是高斯牛顿法。本文档描述了这些方法,并说明了使用软件来求解非线性最小二乘曲线拟合问题。

1绪论

在将含有一个独立变量t和n个参数的向量p的函数拟合到一组m个数据点时,通常最小化测量数据和曲线拟合函数之间的加权平方误差(或加权残差)总和,这种方法是方便的。这种标量值的拟合优度度量称为卡方误差准则。

(1)

(2)

(3)

其中是测量的测量误差。通常加权矩阵W的对角线上是。更正式地,在已知的异常情况下,W可以设置为测量误差协方差矩阵的倒数。更一般地,权重可以设定为追求其他曲线拟合目标。

如果函数在模型参数p中是非线性的,则相对于参数的最小化必须迭代进行。每次迭代的目标是找到参数p中减少的扰动h

2梯度下降法

最速下降法是一种通用的最小化方法,它可以在“下坡”方向更新参数值:与目标函数的梯度方向相反。梯度下降法对于简单目标函数的问题收敛良好[6,7]。对于有数千个参数的问题,梯度下降法有时是唯一可行的方法。

相对于参数的卡方目标函数的梯度为

(4)

(5)

(6)

其中m times; n阶雅克比矩阵表示函数对参数p的变化的局部灵敏度。为了符号简单,J将被用于表示。以最快下降方向移动参数的参数更新h由下式给出

(7)

其中正标量alpha; 确定最快下降方向上的步长。

3高斯牛顿法

高斯牛顿法是一种最小化目标函数平方和的方法。它假设目标函数在最优解附近的参数近似为二次方。对于中等规模的问题,高斯牛顿法收敛速度通常比梯度下降法快得多。

用扰动模型参数评估的函数可以通过一阶泰勒级数展开局部近似。

(8)

将扰动函数的近似代入等式(3)中的

(9)

这表明在扰动h中近似为二次方,并且海森的卡方拟合准则近似为JTWJ。 从中找到最小化的参数更新h

(10)

并且所得到的高斯牛顿更新正态方程是

(11)

4 Levenberg-Marquardt方法

Levenberg-Marquardt算法自适应地改变梯度下降更新和高斯牛顿更新之间的参数更新,

(12)

其中算法参数lambda;较小时导致高斯牛顿更新,lambda;的值较大时导致梯度下降更新。为了使第一次更新是最陡下降方向上的小梯级,参数lambda;被初始化为较大值。如果任何一个迭代恰好导致较差的近似,则lambda;增加。否则,随着解法的改进,lambda;减小,Levenberg-Marquardt方法接近高斯牛顿法,结果通常加速到局部最小值。

在Marquardt的更新关系中:

(13)

lambda;的值被归一化为JTWJ的值。Levenberg-Marquard算法在Matlab函数lm.m中实现。

4.1数值实现

Levenberg-Marquard的许多变形已经在论文和代码中发表,例如[4,6,10,11]。这份文档借鉴了其中的一些,包括增强了1阶雅克比更新的增强。在第i次迭代中,通过比较和来评估步长h。如果度量 rho;i优于用户指定的阈值,,则接受该步长。假设近似(8)是精确的,该度量与LM更新的改进相比,是实际改进的量度。

(14)

如果使用等式(12)的 hlm(15)

如果使用等式(13)的hlm(16)

如果在迭代中,则p hp好得多,pp h代替,lambda;值通过这个因子被减少。否则lambda;值通过这个因子被增加,并且算法进入到下一次迭代。

4.2误差分析

一旦确定了最佳的曲线拟合参数pfit,则为收敛解计算参数统计。如果在曲线拟合之前已知测量误差协方差矩阵Vy或其对角线,在估计模型参数和接下来的错误分析中,加权矩阵应该被设置为测量误差协方差的倒数,即W = Vyminus;1。请注意,如果实际测量误差在测量点(即maxi(sigma;yi )/ mini(sigma;yi ) gt; 10)之间显著变化,那么任何假设相等的测量误差的误差分析将是不正确的。

缩小误差标准,

(20)

是对拟合质量的度量。较大值,,表示拟合误差,,表示拟合误差和测量误差(如预期的)顺序相同,,表示该模型是过度拟合的数据;也就是说,该模型拟合了测量噪声。

参数协方差矩阵由下式计算得出

(21)

渐进标准参数误差,

(22)

提供数据中不明原因的变化如何传播到参数变化的度量,并且基本上是参数的测量误差。

拟合的渐进标准误差,

(23)

表明参数的变化如何影响曲线拟合的变化。

渐进标准预测误差,

(24)

反映了拟合的标准误差以及测量误差。

如果测量误差协方差或单个测量误差在分析之前未知,则可以对每个测量点假设相同的测量误差进行误差分析,如从拟合中估计的,

(25)

在这种情况下,将 Vy设定为I,在式(21)~(24)中将W设定为 I/。还要注意,如果W = I/,按定义,则 = 1。

摘 要

当最小化非线性最小二乘函数时,Levenberg-Marquardt算法可以缓慢收敛,特别是当它必须导航到最佳拟合的狭窄峡谷时。另一方面,当最小二乘函数非常平坦时,算法可能容易在参数空间中丢失。为了提高收敛速度和初始参数猜测的鲁棒性,我们对Levenberg-Marquardt算法进行了几项改进。我们更新通常的步骤,以包括测地加速度校正项,探索一种系统的方式来接受可能由Umrigar和Nightingale引起的残差平方和的上坡步骤,并采用拟牛顿法来更新雅可比矩阵。我们通过比较其在许多测试问题上的性能与测试算法的标准实现来测试这些变化。我们建议,慢收敛和初始猜测的鲁棒性这两个特殊的挑战,是互斥的问题。提高收敛速度的方案通常使算法对初始猜测的鲁棒性降低,反之亦然。我们提供了实现开源的改进,以允许用户调整算法参数以适应特定需求。

1.绪论

常见的计算问题是最小化平方和

, (1)

其中r:RN→RM是N个参数的M维非线性向量函数,theta;,其中Mge;N。Levenberg-Marquardt算法可能是非线性最小二乘法最小化的最常用方法。 在本文中,我们讨论了Levenberg-Marquardt算法的一些修改,旨在提高其成功率和收敛速度。 这些修改在许多参数的大问题上可能是最有用的,常见的Levenberg-Marquardt程序往往有困难。

最小二乘法最常用于数据拟合,在这种情况下,函数采用形式

, (2)

其中是观测数据的模型,,其取决于一组未知参数,以及一个或多个独立变量t。 模型的观测偏差由观测数据的不确定度加权。 方程式(2)中的项被称为残差,并且可以通过表示关于预期值的贝叶斯先验信息的附加项增加。 我们参考方程式(1)中的函数作为成本函数。 成本对应于给定假设高斯误差的数据的参数值的负对数似然。 将C()最小化的参数值称为最佳拟合参数。

Levenberg-Marquardt算法是高斯牛顿法的改进,它基于残差的局部线性化

, (3)

其中J是雅可比矩阵。 然后,高斯牛顿法根据下式迭代

。 (4)

如果高斯牛顿法开始充分接近C的最小值,则高斯牛顿法通常会快速收敛。然而,矩阵通常是劣性的,特征值通常跨越六个数量级或更多的范围。 因此,除非初始猜测非常好,否则高斯牛顿法会产生大量不受控制的步骤,并且会收敛失败。 这在图1中明确地示出,其中远离最佳拟合的高斯牛顿方向与算法应该采取的方向几乎正交。

为了弥补高斯牛顿法的缺点,Levenberg和Marquardt各自建议用对角线截止来阻尼矩阵。 因此,Levenberg-Marquardt算法按照步骤

。 (5)

其中是表示参数的相对缩放的正定对角矩阵,是由该算法调整的阻尼参数。 当大时,该方法在梯度方向上需要一小步。 由于该方法接近解,选择较小,通过高斯牛顿法快速收敛。

通常,具有许多参数的模型表现出马虎的普遍特征,这对拟合过程构成特别的挑战。马虎模型的行为仅由几个硬性(相关)参数组合确定,而大多数其他参数组合是马虎(无关)的。当参数空间的区域中的算法丢失时,出现拟合困难,其中模型行为对参数变化不敏感,即图一中参数空间中的成本曲面上的平台。一个常见的情况是,当对平台失去作用,算法将参数推送到无限值,而没有找到很好的拟合,这种现象被称为参数蒸发。虽然这些解对应于成本的拟合点,即,因此是无限的局部最小值或鞍点,但是这些解决方案不能令人满意,因为它们通常对应于数据和参数的不良拟合,无限的参数几乎没有含义。为了找到更好的拟合,必须手动指导算法。有时可以通过用惩罚项增加成本函数来避免这个问题,以将参数保持在参考文献[11]中提出的合理范围内。然而,这并不总是可能的,惩罚项将移动最小的位置。因此,人们更喜欢算法本身对参数蒸发的敏感度较低。

除了参数蒸发,当算法必须遵循狭窄的峡谷以找到最好的拟合时,它会变得迟缓,如图1所示。对于具有十个或更多个参数的问题,峡谷的长宽比通常大于1000:1,这需要算法沿着槽底部的英寸采取非常小的步长。 数据拟合的难度由于两个主要问题(参数蒸发和缓慢收敛)的解决方案往往与彼此不一致而加剧。在峡谷中加速收敛的方法通常会增加参数蒸发的概率,反之亦然。

因为它可以根据需要进行调整,所以Levenberg-Marquardt方法非常适合处理非线性最小二乘法最小化中的困难。 通过适当调整阻尼项,该方法可以插入梯度下降法来避免参数蒸发,或插入高斯牛顿法来使算法沿着峡谷快速收敛。 Levenberg-Marquardt方法的挑战之一是选择一种适用于更新阻尼参数的方案,使两个方案之间成功内插的。存在许多这样的方案,尽管有些更适合于避免参数蒸发,而其他更适合于通过峡谷,但Levenberg-Marquardt方法对于所使用的具体方法通常具有鲁棒性。

图1:最小二乘问题的参数空间中的成本曲面通常形成由高原包围的狭窄蜿蜒峡谷的层次结构。 算法很容易在高原上丢失,通常在搜索峡谷时蒸发参数(推动它们到无限远)。 我们在这里看到,高原地区的高斯牛顿方向与理想方向几乎正交。 找到峡谷后,算法可以缓慢下降,同时达到最佳拟合。 当参数变得非常大时,这个拟合三个数据点的简单模型,,有一个平台。 当参数被置换时,它也表现出对称性。

<p

剩余内容已隐藏,支付完成后下载完整资料</p


资料编号:[141820],资料为PDF文档或Word文档,PDF文档可免费转换为Word

原文和译文剩余内容已隐藏,您需要先支付 30元 才能查看原文和译文全部内容!立即支付

以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。