说明

本文作为自己学习最小二乘算法的学习笔记,有不对的地方望指正
参考:
书籍 Lecture note. Methods for Non-Linear Least Squares Problems[J]. lecture note.
知乎: https://zhuanlan.zhihu.com/p/38128785.

介绍

最小二乘问题
Least Squares 最小二乘
最小二乘问题是给定一个函数F,找到F的一个自变量,给出这个所谓的目标函数或成本函数的最小值。这里F(x)是f(x)的二次方合的形式,所以称为最小二乘问题。
最小问题涉及到全局最小和局部最小问题:Least Squares 最小二乘
Least Squares 最小二乘
我们假设代价函数F是可微的,并且泰勒展开式是有效的:Least Squares 最小二乘

这个展开形式是重要的,后面会多次用到

局部最小的条件就是:
Least Squares 最小二乘

得到一个概念:平衡点(Stationary point)Least Squares 最小二乘

我们将稳定点带入到1.4a中,可以看出
Least Squares 最小二乘
根据Hessian的定义(1.4c),任何H都是对称矩阵。如果我们要求Hs是正定的,那么它的特征值大于某个数δ> 0(见《Methods for Non-Linear Least Squares Problems》附件A):
Least Squares 最小二乘
所以我们找到局部最小的充要条件:Least Squares 最小二乘

如果Hs是负定的(negative defifinite),那么xs是局部最大值。如果Hs是不定的(indefifinite)(即它有正的和负的特征值),那么xs就是一个鞍点(saddle point)。

下降法

所有的非线性优化方法都是迭代的:从起点x0开始,该方法产生一系列向量x1, x2,…,它(希望)会收敛到x,给定函数的局部最小化器,参见定义1.3。大多数方法都有强制降序条件的措施:
Least Squares 最小二乘
当x0远离解时,我们希望这个方法产生迭代,迭代会稳定地向x移动。在迭代的这个全局阶段,使错误不增加:
Least Squares 最小二乘
在迭代的最后阶段,当xk接近x∗时,我们希望更快地收敛。
Least Squares 最小二乘
Least Squares 最小二乘

所以下降法的迭代思路就是要找到合理的逼近方向 h 和逼近步长 α:
Least Squares 最小二乘
所以需要计算方向:
Least Squares 最小二乘
以及步长:

Least Squares 最小二乘

The Steepest Descent method

我们可以定义:
Least Squares 最小二乘
找到最快的下降方向:
Least Squares 最小二乘
基于(2.8)的算法我们叫做最陡下降法或梯度法

Newton’s Method

Least Squares 最小二乘
下一次迭代
Least Squares 最小二乘
详情见书《Methods for Non-Linear Least Squares Problems》的2.2部分

Line Search

Least Squares 最小二乘
Least Squares 最小二乘

下降速度为:
Least Squares 最小二乘

Trust Region and Damped Methods

假设我们有一个F在当前迭代x的邻域内的行为模型L:
Least Squares 最小二乘
通常,这个模型是F在x附近的二阶泰勒展开,就像(1.4a)右边的前三项,或者L(h)可能是这个展开的近似。一般来说,只有当h足够小时,这样的模型才是好的。书中介绍两种方法:

trust region method

我们假设我们知道一个正数∆,使得模型在一个半径为∆,以x为中心的球内足够准确,并确定步长为
Least Squares 最小二乘

damped method

Least Squares 最小二乘
代入2.14可以看出:
Least Squares 最小二乘
为了防止步长带来的h太大带来的风险 通过增益比(gain ratio),评估具有计算步骤的模型的质量
Least Squares 最小二乘
最后得到Nielsen (1999)相关策略:
Least Squares 最小二乘
初始:ν = 2。

最小二乘

最小二乘问题可以用一般的优化方法来解决,但我们将提出更有效的特殊方法。在许多情况下,它们比线性收敛性更好,有时甚至是二次收敛性,即使它们不需要实现二阶导数。在本章方法的描述中,我们需要F的导数的公式:假设F有连续的二阶偏导数,我们可以把它的泰勒展开式写成
Least Squares 最小二乘
其中J就是雅克比矩阵(Jacobian)
Least Squares 最小二乘
所以
Least Squares 最小二乘
并且
Least Squares 最小二乘

The Gauss–Newton Method

高斯-牛顿方法是基于向量函数各分量的一阶导数实现的。在特殊情况下,它可以给出二次收敛,就像牛顿法对一般优化所做的那样,参见Frandsen等人(2004)。高斯牛顿法是基于f (f的线性模型)在x附近的分量的线性近似:对于小的||h||,我们可以从泰勒展开式(3.2)中看到
Least Squares 最小二乘
所以
Least Squares 最小二乘
h的方向:
Least Squares 最小二乘
所以对于算法2.4:
Least Squares 最小二乘

The Levenberg–Marquardt Method

Levenberg(1944)和后来的Marquardt(1963)建议使用阻尼高斯-牛顿法。步骤hlm是通过以下修改来定义的:
Least Squares 最小二乘
算法:
Least Squares 最小二乘

相关文章: