打印

非线性优化: Levenberg-Marquardt法(LM法)

[复制链接]
494|8
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
keer_zu|  楼主 | 2023-3-15 11:23 | 只看该作者 |只看大图 回帖奖励 |倒序浏览 |阅读模式
注意到关于LM法网上大部份资料内容比较混乱,主要是因为LM法是可以从两个不同的视角看的。一种是看作介于高斯牛顿和梯度下降法之间的一种算法,另一种是作为一种信赖域的算法来看,而两种视角下虽然最后结论比较相似,但公式推导的思路差别会比较大。
从历史上讲,LM法最初作为高斯牛顿法的改良而被提出,随后才有了信赖域法上应用。这里先从高斯牛顿法/梯度下降法混合的视角下来进行推导。
基础

先来回顾一下高斯牛顿法的几个关键点(可参照非线性优化整理-2.高斯-牛顿法

高斯牛顿法的迭代公式为


使用特权

评论回复
沙发
keer_zu|  楼主 | 2023-3-15 11:24 | 只看该作者
LM法

高斯牛顿法具有收敛快速但对初始点位置敏感的特点,梯度下降法则相反。
而LM法,也称作阻尼最小二乘法(Damped Least-squares),则结合了二者的特点,引入了阻尼因子<span class="MathJax" id="MathJax-Element-3399-Frame" tabindex="0" data-mathml="μ" role="presentation" style="box-sizing: border-box; outline: 0px; display: inline; line-height: normal; word-spacing: normal; white-space: nowrap; float: none; direction: ltr; max-width: none; max-height: none; min-width: 0px; min-height: 0px; border: 0px; position: relative;">μ�来调节算法的特性。
原始版LM法的迭代公式为



使用特权

评论回复
板凳
keer_zu|  楼主 | 2023-3-15 11:26 | 只看该作者

使用特权

评论回复
地板
keer_zu|  楼主 | 2023-3-15 11:26 | 只看该作者

使用特权

评论回复
5
keer_zu|  楼主 | 2023-3-15 11:27 | 只看该作者
算法流程

可以总结经典LM算法的迭代流程为



使用特权

评论回复
6
keer_zu|  楼主 | 2023-3-15 11:31 | 只看该作者

使用特权

评论回复
7
keer_zu|  楼主 | 2023-3-15 11:31 | 只看该作者

使用特权

评论回复
8
keer_zu|  楼主 | 2023-3-15 11:31 | 只看该作者
结论
  • LM法是一种非常高效的迭代算法,能适用于大多数的case
  • 该算法的许多变量决定了迭代的效率和结果的收敛性,而这些参数的理想值往往依目标函数不同而不同
  • 因为存在矩阵求逆这一运算,所以对于大型数据求解需要用一些特殊技巧。

使用特权

评论回复
9
keer_zu|  楼主 | 2023-3-15 11:33 | 只看该作者
信赖域法
这里再补充一下信頼域法。
求解非线性优化的方法可以主要分为线性搜索和信赖域法(Trust Region Method)。
线性搜索核心思想是先确定搜索方向,然后确定步长进行迭代
信赖域法核心思想则是先确定最大距离,再确定方向。具体为每次迭代都会给出一个半径为Δ
Δ
的信赖域使得模型在该信頼域内足够精确。在该领域内求解问题得到一个步长h

,接着通过某一评价标准判断该步长的好坏来决定是否要接受该步长。如果接受则更新当前位置,否则则当前位置不变。而新信赖域的半径大小则依照判断预测的好坏,来增大或减小。
信赖域法的基本流程如下




使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

个人签名:qq群:49734243 Email:zukeqiang@gmail.com

1352

主题

12436

帖子

53

粉丝