METHODS FOR NON-LINEAR LEAST SQUARES PROBLEMS 翻译(一)

本文介绍了最小二乘问题的基本概念,包括定义1.1中的最小二乘问题、全局最小值和局部最小值的定义,以及如何通过梯度和海塞矩阵判断局部最小值。着重讲解了驻点和局部最小值的必要与充分条件。后续章节将探讨优化技术在非线性最小二乘问题中的应用。

METHODS FOR NON-LINEAR LEAST SQUARES PROBLEMS(一)

分章节更新,剩下两部分一周内上传

1. 介绍和定义

在本手册中,我们考虑了以下问题

定义1.1. 最小二乘问题

寻找 x∗x^*x,即以下式子的局部最小值
F(x)=12∑i=1m(fi(x))2(1.1) F(\pmb{x})=\frac{1}{2}\sum_{i=1}^{m}{(f_i(\pmb{x}))^2} \tag{1.1} F(xxx)=21i=1m(fi(xxx))2(1.1)
其中,fi:Rn→R,i=1,...f_i:\mathbb{R}^n \to \mathbb{R},i=1,...fi:RnR,i=1,...,mmm 由函数给定,并且 m≥nm\geq nmn

F(x)F(x)F(x) 的定义中的因子 12\frac{1}{2}21x∗x^∗x 没有影响。它是为了方便而引入的。

例子1.1.

最小二乘问题的一个重要来源是数据拟合。例如,考虑如下图所示的数据点 (t1,y1),...,(tm,ym)(t_1,y_1),...,(t_m,y_m)(t1,y1),...,(tm,ym):

请添加图片描述

此外,我们还得到了一个拟合模型
M(x,t)=x3ex1t+x4ex2t M(\pmb{x},t)=x_3 e^{x_1 t}+x_4 e^{x_2 t} M(xxx,t)=x3ex1t+x4ex2t

该模型取决于参数x=[x1,x2,x3,x4]Tx=[x_1,x_2,x_3,x_4]^Tx=[x1,x2,x3,x4]T。我们假设存在一个x∗\pmb{x}^*xxx满足
yi=M(x∗,ti)+ϵi y_i = M(\pmb{x}^*,t_i)+\epsilon_i yi=M(xxx,ti)+ϵi
其中{ϵi}\{\epsilon_i\}{ϵi}是数据序列的(测量)误差,我们假定其行为类似于 “白噪声”。

对于任何给定的x\pmb{x}xxx,我们可以计算残差
fi(x)=yi−M(x,ti)=yi−x3ex1ti−x4ex2ti,i=1,...,m. \begin{matrix} &f_i(x)=y_i - M(\pmb{x},t_i) \\ &=y_i-x_3 e^{x_1 t_i} -x_4 e^{x_2 t_i}, i=1,...,m. \end{matrix} fi(x)=yiM(xxx,ti)=yix3ex1tix4ex2ti,i=1,...,m.

对于最小二乘法的拟合,参数 x∗\pmb{x}^*xxx 由最小化残差的平方之和来确定。这可以看作是一个当 n=4n=4n=4 时定义1.1中的问题。M(x∗,t)M(\pmb{x}^*,t)M(xxx,t) 的图形在图1.1中以实线显示。

最小二乘问题是更一般的问题的一个特殊变体:给定一个函数 F:Rn→RF:\mathbb{R}^n \to \mathbb{R}F:RnR,找到 FFF 的一个参数,使这个所谓的目标函数或成本函数的值最小。

定义1.2. 全局最小值

给定 F:Rn→RF:\mathbb{R^n} \to \mathbb{R}F:RnR。寻找
x∗=argminx{F(x)}(1.2) \pmb{x}^*=argmin_{\pmb{x}}\{F(\pmb{x})\} \tag{1.2} xxx=argminxxx{F(xxx)}(1.2)

这个问题在一般情况下很难解决,我们只介绍解决更简单的问题的方法,即寻找 FFF 的局部最小化值,一个在一定区域内给出 FFF 的最小值的参数向量。区域的大小由 δ\deltaδ 给出,其中 δ\deltaδ 是一个小的正数。

定义1.3. 局部最小值

给定 F:Rn→RF:\mathbb{R}^n \to \mathbb{R}F:RnR,寻找 x∗\pmb{x}^*xxx 使得
F(x∗)≤F(x)for∣∣x−x∗∣∣<δ(1.3) F(\pmb{x}^*) \leq F(\pmb{x}) \quad for \quad ||\pmb{x}- \pmb{x}^*||<\delta \tag{1.3} F(xxx)F(xxx)forxxxxxx<δ(1.3)

在本介绍的其余部分,我们将讨论优化的一些基本概念。第2章简要回顾了对于通用的代价函数寻找局部最小值的方法。关于更多细节,可以参考 Frandsen et al (2004)。在第三章中,我们给出了专门针对最小二乘问题的方法。

我们假设代价函数 FFF 是可微并且平滑的,这使得下面的泰勒展开是有效的,
F(x+h)=F(x)+hTg+12hTHh+O(∣∣h∣∣3)(1.4a) F(\pmb{x}+ \pmb{h})=F(\pmb{x})+\pmb{h}^T\pmb{g}+\frac{1}{2} \pmb{h}^T\pmb{H}\pmb{h}+\mathit{O}(||\pmb{h}||^3) \tag{1.4a} F(xxx+hhh)=F(xxx)+hhhTggg+21hhhTHHHhhh+O(hhh3)(1.4a)

除非另有说明,∣∣⋅∣∣||\cdot||表示2-范数,∣∣h∣∣=h12+...+hn2||\pmb{h}||=\sqrt{h_1^2+...+h_n^2}hhh=h12+...+hn2

其中 g\pmb{g}ggg 是梯度,
g=F˙(x)=[∂F∂x1(x)⋮∂F∂xn(x)](1.4 b) \pmb{g} = \dot{F}(\pmb{x})=\begin{bmatrix}\frac{\partial F}{\partial x_1}(\pmb{x}) \\ \vdots \\ \frac{\partial F}{\partial x_n}(\pmb{x})\end{bmatrix} \tag{1.4 b} ggg=F˙(xxx)=x1F(xxx)xnF(xxx)(1.4 b)

H\pmb{H}HHH 是海塞矩阵
H=F¨(x)=[∂2F∂xi∂xj(x)](1.4 c) \pmb{H}=\ddot{F}(x)=\begin{bmatrix} \frac{\partial^2 F}{\partial x_i \partial x_j}(\pmb{x})\end{bmatrix} \tag{1.4 c} HHH=F¨(x)=[xixj2F(xxx)](1.4 c)

如果 x∗\pmb{x}^∗xxx 是一个局部最小值,并且 ∣∣h∣∣||\pmb{h}||hhh 足够小,那么我们就无法找到一个使得 FFF 值更小的点x∗+h\pmb{x}^∗+\pmb{h}xxx+hhh。将这一观察与式(1.4a)结合起来我们可以得到

理论1.5. 局部最小值的必要条件

如果 x∗\pmb{x}^*xxx 是局部最小值,则
g∗=F˙(x∗)=0 \pmb{g}*=\dot{F}(\pmb{x}^*)=0ggg=F˙(xxx)=0

我们对满足必要条件的参数使用一个特殊的名称:

定义1.6. 驻点

如果
gs=F˙(xs)=0 \pmb{g}_s = \dot{F}(\pmb{x}_s)=0 gggs=F˙(xxxs)=0
xs\pmb{x}_sxxxs 被称为 FFF 的一个驻点。

因此,局部最小值也是一个驻点,而局部最大值也是如此。一个既不是局部最大值也不是局部最小值的静止点被称为鞍点。为了确定一个给定的驻点是否是局部最小值,我们需要在泰勒级数(1.4a)中包含二阶项。代入 xs\pmb{x}_sxxxs ,我们看到
F(xs+h)=F(xs)+12hTHsh+O(∣∣h∣∣3)(1.7) F(\pmb{x}_s+\pmb{h})=F(\pmb{x}_s) + \frac{1}{2}\pmb{h}^T\pmb{H}_s \pmb{h}+\mathit{O}(||\pmb{h}||^3) \tag{1.7} F(xxxs+hhh)=F(xxxs)+21hhhTHHHshhh+O(hhh3)(1.7)
其中 Hs=F¨(xs)\pmb{H}_s = \ddot{F}(\pmb{x}_s)HHHs=F¨(xxxs)

从海塞矩阵的定义(1.4c)可以看出,任何 H\pmb{H}HHH 都是一个对称矩阵。如果我们要求 Hs\pmb{H}_sHHHs 是正定的,那么它的特征值需要大于某个数字 δ>0\delta>0δ>0(见附录A),并且
hTHsh≥δ∣∣h∣∣2 \pmb{h}^T\pmb{H}_s\pmb{h} \geq \delta ||\pmb{h}||^2 hhhTHHHshhhδhhh2

这表明,对于足够小的 ∣∣h∣∣||\pmb{h}||hhh,(1.7)式右边的第三项将被第二项所支配。这个项是正的,所以我们得到

理论1.8. 局部最小值的充分条件

假设 xs\pmb{x}_sxxxs 是一个驻点,并且 F¨(xs)\ddot{F}(\pmb{x}_s)F¨(xxxs) 是正定的。 那么 xs\pmb{x}_sxxxs 是一个局部最小值。

如果 Hs\pmb{H}_sHHHs 是负定的,那么 xs\pmb{x}_sxxxs 就是一个局部最大值。如果 Hs\pmb{H}_sHHHs 是不定的(即它的特征值有正有负),那么 xs\pmb{x}_sxxxs 是一个鞍点。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值