设函数建立了参数向量估计的测量向量的关系.现在有初始的参数估计和测量向量,想找到一个向量最好满足函数关系.即最小化平方距离.
LM算法的思想是在信赖域内线性逼近.对于一个小的,泰勒展开得到近似值.
[1]
是雅克比矩阵.像所有的非线性优化方法一样,LM是迭代的:设置起始点,产生一系列的,最后收敛到的局部最小值.因此,对于每一步,需要找到最小化.被找的就是线性最小二乘问题的解:当和的列空间正交时获得最小值.得到,其中是正规方程[1]的解.
[2]
矩阵是Hessian矩阵的近似.LM方法实际上求解了一个称为增广正态方程的[2]的变体.
[3]
其中的非对角元素与的相应元素相同,对角元素在由给出.改变的对角元素的策略称为阻尼,被称为阻尼系数.如果被更新的参数向量,其中由方程[3]得到,且使残差减小,此次更新可以接受并且减小阻尼系数并重复,否则增加,增广正态方程被再次求解而且迭代到有一个使残差减小.
在LM中,阻尼项在每次迭代时进行调整,以确保减少残差.如果阻尼设置为较大值,则矩阵在等式[3]中,几乎是对角的.此时LM的更新步长接近最速下降方向.阻尼还可以处理[3]中雅可比矩阵不是满秩,是奇异的的情况.如果阻尼较小,LM步长近似于适用于完全线性问题的精确二次步长.满足以下条件时迭代结束:
(1)梯度的幅值,即等式[2]右侧的,下降到阈值以下
(2)值的相对变化下降到阈值以下
(3)残差降到阈值以下
(4)最大迭代次数达到
如果的协方差矩阵可用,可以最小化,.因此,通过求解由加权正态方程定义的加权最小二乘问题