最优化理论·非线性最小二乘
标签(空格分隔): 数学
非线性最小二乘问题是椭圆拟合中最易遇到的优化问题,本文主要对非线性二乘的基本分析做简单介绍
1. 什么是最小二乘问题
目标函数能够写为m个函数平方和的优化问题
其中,每个函数
2.非线性最小二乘问题
- 当
fi(x) 是关于x 的非线性函数时,即为非线性优化问题 - 此时,需要利用Taylor一阶展开近似
fi(x)
2.1
fi(x)
的一阶近似
设
x(k) 是解x 的第k次近似,在此处将fi(x) 进行一阶展开,并令一阶展开值为φi(x)
对上式进行整理,得到
可以看到,一阶近似
φi(x) 是关于待优化向量x 的线性函数:是
fi(x) 的梯度【fi(x) 对向量x求导】在x(k) 处的取值是
fi(x) 在x(k) 处的取值
2.2 F(x)的近似
在得到
2.3 分析
Φ(x)
的具体形式
将平方和形式写为行向量、列向量乘积形式
Φ(x)=[φ1(x),φ2(x),⋯φm(x)]⋅⎡⎣⎢⎢⎢⎢φ1(x)φ2(x)…φm(x)⎤⎦⎥⎥⎥⎥ 将
φi(x) 的具体形式代入
⎡⎣⎢⎢⎢⎢φ1(x)φ1(x)…φ1(x)⎤⎦⎥⎥⎥⎥=⎡⎣⎢⎢⎢⎢⎢⎢⎢⎢ ▽f1(x(k))T⋅x−[▽f1(x(k))T−f1(x(k))] ▽f2(x(k))T⋅x−[▽f2(x(k))T−f2(x(k))]… ▽fm(x(k))T⋅x−[▽fm(x(k))T−fm(x(k))]⎤⎦⎥⎥⎥⎥⎥⎥⎥⎥ 继续整理得到
⎡⎣⎢⎢⎢⎢φ1(x)φ2(x)…φm(x)⎤⎦⎥⎥⎥⎥=⎡⎣⎢⎢⎢⎢⎢ ▽f1(x(k))T ▽f2(x(k))T… ▽fm(x(k))T⎤⎦⎥⎥⎥⎥⎥⋅x−⎡⎣⎢⎢⎢⎢⎢ ▽f1(x(k))T ▽f2(x(k))T… ▽fm(x(k))T⎤⎦⎥⎥⎥⎥⎥⋅x(k)+⎡⎣⎢⎢⎢⎢ f1(x(k)) f2(x(k))… fm(x(k))⎤⎦⎥⎥⎥⎥ 引入
Ak 和b !!!!!!
其中:则有
⎡⎣⎢⎢⎢⎢φ1(x)φ1(x)…φ1(x)⎤⎦⎥⎥⎥⎥=Ak⋅x−b 那么,目标函数
F(x) 的一阶近似Φ(x) 的简洁形式为
Φ(x)=(Akx−b)T⋅(Akx−b)
它为标准的线性最小二乘问题
2.4 转化为线性最小二乘后的分析
- 一阶近似得到的优化问题就是线性最小二乘问题,可以利用最小二乘问题求解,直接求解梯度为0的点,即目标函数在
x(k) 处的最小值点应该满足如下线性方程的解
- 当
AK 为列满秩时,以上方程的解如下
这里注意,利用上述方法求得的最优解为目标函数在x(k) 处的一阶近似最小值,不能作为全局最优解,只能说明在局部向最优解点又进一步走近了,记为x(k+1)
2.5 对
x(k+1)
更新等式进一步分析化简
即有:
-
Hk 是目标函数F(x) 的一阶近似函数Φ(x) 的Hessian矩阵,即可以说是目标函数F(x) 的近似Hessian矩阵 -
Ak 是目标函数F(x) 的梯度矩阵
注意:按照这里的推导,可以通过一步步迭代计算
x 的最优值,这种方法可以称之为Gaussian-Newton方法,但仔细观察发现,当近似Hessian阵奇异或者近似奇异时,以上算法无法使用!也就引出了著名的LM算法