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)=21​i=1∑m​(fi​(xxx))2(1.1)
其中,fi:Rn→R,i=1,...f_i:\mathbb{R}^n \to \mathbb{R},i=1,...fi​:Rn→R,i=1,...,mmm 由函数给定,并且 m≥nm\geq nm≥n。

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

例子1.1.

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

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

该模型取决于参数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)+ϵiy_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)=yi​−M(xxx,ti​)=yi​−x3​ex1​ti​−x4​ex2​ti​,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:Rn→R,找到 FFF 的一个参数,使这个所谓的目标函数或成本函数的值最小。

定义1.2. 全局最小值

给定 F:Rn→RF:\mathbb{R^n} \to \mathbb{R}F:Rn→R。寻找
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:Rn→R,寻找 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)for∣∣xxx−xxx∗∣∣<δ(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)+hhhTg​g​​g+21​hhhTHHHhhh+O(∣∣hhh∣∣3)(1.4a)

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

其中 g\pmb{g}g​g​​g 是梯度,
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} g​g​​g=F˙(xxx)=⎣⎢⎡​∂x1​∂F​(xxx)⋮∂xn​∂F​(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)=[∂xi​∂xj​∂2F​(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}^*)=0g​g​​g∗=F˙(xxx∗)=0

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

定义1.6. 驻点

如果
gs=F˙(xs)=0\pmb{g}_s = \dot{F}(\pmb{x}_s)=0 g​g​​gs​=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​)+21​hhhTHHHs​hhh+O(∣∣hhh∣∣3)(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 hhhTHHHs​hhh≥δ∣∣hhh∣∣2

这表明,对于足够小的 ∣∣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​ 是一个鞍点。

METHODS FOR NON-LINEAR LEAST SQUARES PROBLEMS 翻译(一)相关推荐

  1. METHODS FOR NON-LINEAR LEAST SQUARES PROBLEMS 翻译(六)

    METHODS FOR NON-LINEAR LEAST SQUARES PROBLEMS(六) 之后的两个方法都是针对无法进行解析求导情况下的处理方法,大多数情况下并不会用到 3.5. L-M 方法 ...

  2. METHODS FOR NON-LINEAR LEAST SQUARES PROBLEMS 翻译(三)

    METHODS FOR NON-LINEAR LEAST SQUARES PROBLEMS(三) 3. 非线性最小二乘问题 在本手册的其余部分中,我们将讨论求解非线性最小二乘问题的方法.给定一个向量函 ...

  3. METHODS FOR NON-LINEAR LEAST SQUARES PROBLEMS 翻译(七)

    METHODS FOR NON-LINEAR LEAST SQUARES PROBLEMS(七) 3.7. 最后的话 我们已经讨论了许多解决非线性最小二乘问题的算法.它们都出现在任何好的程序库中,并且 ...

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

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

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

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

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

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

  7. Python3 LinAlgError: SVD did not converge in Linear Least Squares

    有用的话记得回过头请给本文点个赞,感谢您的支持! LinAlgError: SVD did not converge in Linear Least Squares 说明在拟合时,y值里存在nan值, ...

  8. numpy.polyfit:LinAlgError: SVD did not converge in Linear Least Squares

    原因:有NAN值 解决方法:去除NAN值,例如去除a,b,c列中有NAN值的行 data = data.dropna(axis=0,subset=['a', 'b','c']) reference: ...

  9. MULLS: Versatile LiDAR SLAM via Multi-metric Linear Least Square 论文翻译

    目录 论文题目 代码: 摘要 I. 介绍 II. 相关工作 III. 方法 A.Motion compensation 运动补偿 B. Geometric feature points extract ...

最新文章

  1. tyvj 1059 过河 dp
  2. python里 try里怎么用int函数_如何在不使用try / catch的情况下测试Python枚举中是否存在int值?...
  3. MySql 学习笔记 (派生表)
  4. sql server注入_SQL注入:SQL Server中的介绍和预防方法
  5. 20191228_Python语言课程设计
  6. 作者讲述《一个操作系统的实现》的故事
  7. file_get_contents打开中文名文件时出错
  8. android studio 2048游戏
  9. SPSS22 高级市场分析 统计分析【原创】
  10. CV | Max Flow / Min Cut 最大流最小割算法学习
  11. Word:开机即启动Word程序(转)
  12. pyecharts制作柱状图和折线图
  13. 如何在手机上新建html文件夹,用手机怎么制作网页
  14. 微管理:给你一个技术团队,你该怎么管札记-化繁为简
  15. Java面试题总结之数据结构、算法和计算机基础(刘小牛和丝音的爱情故事1)
  16. File “C:\Users\hjl\AppData\Local\Programs\Python\Python38\lib\site-packages\pymysql\err.py“, line 1
  17. 计算机在中学物理的应用分析报告,信息技术在初中物理教学中的应用
  18. 浅谈《Sky 光·遇》中的渲染技术
  19. 为防护加码,飞凌嵌入式i.MX93系列开发板让通信安全又稳定
  20. 2022抢先版数字藏品NFT平台|竞拍转拍藏品拍卖分级交易中心支持小程序APPH5三端

热门文章

  1. 微信公众号php发送图片素材,php版微信公众号接口实现发红包的方法
  2. 在windows中ohmyzsh 的powerlevel10k主题及插件推荐
  3. 记录一下matplotlib的使用。
  4. 基于视觉halcon的对pcb元件缺失快速检测参考处理
  5. AD软件如何添加SCHLIB和PCBLIB进库/Altium designer添加库文件
  6. Eplan P8 Pro Panel 2.4 Win32_64-ISO 1DVD电气制图软件
  7. 准备参加Bambook达人赛,参赛题目JDocHelper
  8. WebSocket实现广播
  9. 终身 服务器_8uftp客户端,8uftp客户端的5大软件特色|服务器|ftp
  10. css - 圣杯布局和双飞翼布局