非线性优化

一、最大似然估计和最大后验

1.贝叶斯法则:

解决逆向概率问题时提出,即在不知道袋子里球黑白比例的时候,从一个袋子里摸出一个(或几个)球,后根据摸出的球颜色来估计袋子里的球的黑白比例;

P(A|B)=\frac{P(B|A)P(A)}{P(B)}

其中:

  • P(A|B)表示再P(B)发生的情况下P(A)发生的概率;
  • P(B|A)称为似然
  • P(A)为A的先验概率,则称P(A)称为先验
  • P(A|B)已知A的情况下B的概率,那么称为A的后验概率

2.求解最大后验概率:

x^*_{MAP}=arg maxP(x|z)=arg max P(z|x)P(x)

因为贝叶斯法则分母部分和待估计状态无关,所以求解最大后验概率相当于求解最大似然先验的乘积;

3.求解最大似然估计:

在我们不知道位姿的情况下,即在没有先验的情况下

x^*_{MLE}=arg maxP(z|x)

求解最大似然估计可以理解为:在什么样的状态下,最多可能产生现在观测到的数据;

二、最小二乘法:

找到一个理论值和观测值的平方和最小的值,即试图找到一条直线或者曲线,最大可能的范围内可以表达当前直线或者曲线的变化

即:

E=\sum_{i=1}^{n}e_{i}^{2}=\sum_{i=1}^{n}(y_i-\hat{y})^2

三、求解非线性最小二乘解法

此处引入一个简单的最小二乘问题:

min\frac{1}{2}||f(x)||_{2}^{2}

1.梯度下降法:

将目标函数进行泰勒展开

||f(x)+\Delta x||_{2}^{2}\approx ||f(x)||_{2}^{2}+J(x)\Delta x+\frac{1}{2}\Delta x^TH\Delta x

若为一阶梯度法,可得:

\Delta x^*=-J^T(x)

那就不要第二项,此方法叫最速下降法,但是容易走锯齿路线;

若为二阶梯度法,可得:

\Delta x^*=arg min\frac{1}{2}||f(x)||_{2}^{2}+J(x)\Delta x+\frac{1}{2}\Delta x^TH\Delta x

则:

H\Delta x=-J^T

此方法又叫牛顿法,缺陷是需要算H矩阵,不好算;

2.高斯牛顿法:

只对目标函数f(x)进行一阶泰勒展开

f(x+\Delta x)\approx f(x)+J(x)\Delta x

当前目标是需要寻找下降矢量\Delta x,使得||f(x+\Delta x)||最小,为了求\Delta x,需要解一个最小二乘问题;

\Delta x^{*}=argmin\frac{1}{2}||f(x)+J(x)\Delta x||^{2}

展开平方项:

\frac{1}{2}||f(x)+J(x)\Delta x||^2=\frac{1}{2}(f(x)+J(x)\Delta x)^T(f(x)+J(x)\Delta x)

=\frac{1}{2}(|||f(x)||_{2}^{2}+2f(x)^TJ(x)\Delta x+\Delta x^TJ(x)^TJ(x)\Delta x

求上式关于\Delta x的导数,并令其为0:

2J(x)^Tf(x)+2J(x)^TJ(x)\Delta x=0

那么可得:

J(x)^TJ(x)\Delta T=-J(x)^Tf(x)

在此情况下,因为要求解的变量是\Delta x,那么称它为增量方程,也可也称为高斯牛顿方程;将左边定义为H,右边定义为g;

H\Delta x=g

3.列文伯格-马夸尔特方法:

高斯牛顿法中采用了近似二阶泰勒展开的方法,在展开点附近有较好的效果,所以尝试给\Delta x增加一个信赖区域,不能让他太大而不准确,这种方法也被称为信赖区域法;

\rho =\frac{f(x+\Delta x)-f(x)}{J(x)\Delta x}

用拉格朗日乘子转化为无约束优化问题:

min\frac{1}{2}||{f(X_k)+J(x_k)\Delta x_k}||^2+\frac{\lambda }{2}||D\Delta x||^2

展开后得到增量的线性方程:

(H+\lambda D^TD)\Delta x=g

将其简化D=I

(H+\lambda I)\Delta x=g

 

 
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值