(SLAM/VIO)多传感器融合(1):统计参数估计简介

1.关于变量、分布、概率、矩的简单概念:

1.1 随机变量:

       随机变量: 表示随机试验各种结果的实值单值函数。随机事件不论与数量是否直接有关,都可以数量化,即都能用数量化的方式表达。
       随机事件数量化的好处是可以用数学分析的方法来研究随机现象。例如某一时间内公共汽车站等车乘客人数,电话交换台在一定时间内收到的呼叫次数,灯泡的寿命等等,都是随机变量的实例。

1.2 分布函数与密度函数:

1.2.1分布函数(累计分布函数):       

定义域(-\infty -\infty ),值域为[0,1]的单调不减函数F(x),即为分布函数,与随机变量的关系可以这样描述:

X\Omega上的随机变量,对x\in R,函数有函数:

                                                      F(x) = Pr(X\leq x)

分布函数F与随机变量X通过概率测度Pr关联。

1.2.2 概率密度函数:

密度函数又称概率密度函数(PDF)f(x),可以认为是分布函数的导数(广义倒数):

                                                                       f(x) = \frac{dF(x)}{dx}

我们使用PDF在某一区间上的积分来表示随机变量落在这个区间的概率,即:

                                                                   Pr(a\leq X\leqslant b) = \int_{a}^{b}f_(x)dx

1.2.3 矩

       在数学和统计学中,矩(moment)是对变量分布和形态特点的一组度量。n阶矩被定义为一变量的n次方与其概率密度函数(Probability Density Function, PDF)之积的积分。在文献中n阶矩通常用符号μn表示,直接使用变量计算的矩被称为原始矩(raw moment),移除均值后计算的矩被称为中心距(central moment)。变量的一阶原始矩等价于数学期望(expectation)、二至四阶中心矩被定义为方差(variance)、偏度(skewness)和峰度(kurtosis)--来自百度百科

定义:相对于值c的n阶矩为:

                                                                      \mu _{n}^{'}=\int_{-\infty }^{\infty}(x-c)^{n}f(x)dx

  • 期望:随机变量的一阶原点矩:

                                                                      E(x)=\int_{-\infty }^{\infty}xf(x)dx

  • 方差:随机变量的二阶中心矩:

                                                                      V(x)=\int_{-\infty }^{\infty}(x-E(x))^{2}f(x)dx

1.2.4 联合分布与边缘分布:

  • 随机变量XY的联合分布:

                                                                         F(x,y) = Pr(X\leq x, Y\leq y)

  • 联合密度:

                                                                             f(x,y) = \frac{\partial ^{}2 F(x,y)}{\partial x\partial y}

  • 已知联合分布F(x,y) ,则边缘分布:

                                                                   F(x) = F(x, \infty), F(y) = F(\infty ,y)

1.2.5 条件分布,Bayesian公式与条件期望:

  • 已知随机变量X时, Y的条件概率密度:

                                                                            f(y|x) = \frac{f(x,y)}{f(x)}

  • 贝叶斯Bayersian公式:

                                                                           f(y|x) = \frac{f(x|y)f(y)}{f(x)}

  • 条件期望:

                                                      E(x|Y=y)=\int xdF(x|y) = \int xf(x|y)dx

1.2.6 独立

  • 随机变量XY相互独立:

                                                              f(x,y) = f(x)f(y)

  • XY关于Z条件独立:

                                                                  f(x,y|z) = f(x|z)f(y|z)

2 参数估计

       统计认为客观世界的演化发展由概率律支配, 因⽽统计最重要的任务之⼀是根据对客观世界的观测推
断支配其演化发展的概率律.
       概率律由联合分布公式化, 因此概率律的估计转化为联合分布的估计. 进⼀步, ⽣成同样观测的概率律
有⽆穷多, 切合实际的做法是将概率律限制在特定的概率族中 (可以理解为具有特定类型的分布, 例如正
态分布), 从⽽概率律的估计问题转化为特定概率族的参数估计问题.


2.1 经典估计方法:

       在数学中,估计问题的一般描述就是:已知总体队形的分布特性F(x;\alpha ),其中\alpha是未知参数,也就是我们待估计的参数。已知有一组观测:\left \{ z_k = h_k(x_k), x_k \sim F(x; \alpha ) \right \} _{k=1}^n,其中 h_k(x)已知;则观测的联合密度函数:

                                                              f_z(z_1,..., z_n) = f_x(x_1,..., x_n;\alpha )

       一般观测之间相互独立,有:

                                                                f_x(x_1,..., x_n;\alpha ) = \prod_{i=1}^{n}fx(x_i,\alpha)

实际上,上述两个公式为似然函数。

2.1.1 矩估计:

       矩估计,即矩估计法,也称“矩法估计”,就是利用样本矩来估计总体中相应的参数。首先推导涉及感兴趣的参数的总体(即所考虑的随机变量的幂的期望值)的方程。然后取出一个样本并从这个样本估计总体矩。接着使用样本矩取代(未知的)总体矩,解出感兴趣的参数。从而得到那些参数的估计。------百度百科

2.1.2 极⼤似然估计 (Maximum Likelihood Estimation, MLE)

       极大似然估计遵循的基本原理是 “小概率事件原理 (small probability event principle, SPEP)”. SPEP 认为小概率事件在⼀次观测中不会发⽣, 等价的说, ⼀次观测中发⽣的事件, 是⼤概率事件。因此极⼤似然估计通过最⼤化联合分布估计未知参数。

                                                                      \hat{\alpha} = _{\ \ \ \alpha}^{argmax}f_x(x_1,..., x_n;\alpha )

2.1.2 加权最小⼆乘 (Weighted Least Square Estimation, WLSE) 和最小⼆乘 (Least Square Estimation, LSE):


       WLSE 和 LSE 可以认为是 MLE 的简化版本. 事实上, 若噪声服从 Gauss 分布, MLE 就退化为WLSE(异⽅差噪声观测) 或者 LSE(齐⽅差噪声观测). 当然, 最小⼆乘也可以通过投影从代数上解释. WLSE 假设z_k = h_k(\alpha)+\epsilon _k,其中 \epsilon _k是观测噪声, 并极小化带权重的残差:

                                                                     \hat{\alpha} = _{\ \ \ \alpha}^{argmin}\sum_{k=1}^{n}||z_k-h_k(\alpha)||_{W_k}^{2}

2.1.3 Bayesian 型 (Bayesian Type):

       前面的几种方法都假设待估参数 \alpha 是常数 (或者说不考虑 \alpha 的先验分布), Bayesian型估计则认为待估参数是服从某个分布的随机变量. 因此 Bayesian 型估计和传统估计最⼤的区别在于联合概率密度多了未知参数的先验信息刻画。或者Bayesian 型估计是考虑未知参数先验信息的极大似然估计。

                                                    f_z(z_1,..., z_n) = f_x(x_1,..., x_n;\alpha ) = f_x(x_1,..., x_n|\alpha )f_\alpha(\alpha)

因此Bayesian型为:

                                                                     \hat{\alpha} = _{\ \ \ \alpha}^{argmax}f_x(x_1,..., x_n|\alpha )f_\alpha(\alpha)

2.1.4 最大后验概率 (Maximum a Prior, MAP):

       MAP 和 Bayesian 型类似, 也考虑未知参数的先验信息, 只不过 MAP 不直接最⼤化联合概率密度, 而是最⼤化后验概率密度:

                                                                   f_x(\alpha|x_1,..., x_n) = \frac{f_x(x_1,..., x_n|\alpha) f_\alpha(\alpha) }{f_x(x_1,..., x_n)}

因为f_x(x_1,..., x_n),\alpha无关,所以MAP得到与Bayesian相同的结果:

                                                          \hat{\alpha} = _{\ \ \ \alpha}^{argmax}f_x(\alpha|x_1,..., x_n) = _{\ \ \ \alpha}^{argmax}f_x(x_1,..., x_n|\alpha )f_\alpha(\alpha)

例:

z = Ax + n, 已知A, 噪声n \sim N(0, \Sigma ),给定观测z, 估计x,设x \sim N(0, \sigma ),则联合概率密度:

                                  f(z,x) = f(z|x)f(x) \propto exp{-\frac{1}{2}(z-Ax)^T \Sigma^-1(z-Ax)} exp{(-\frac{1}{2}x\sigma^{-1} x)}

那么极大化该函数等价于极小化:

                                                            (z-Ax)^T \Sigma^-1(z-Ax) + \sigma^{-1}||x||^2

2.2 估计问题中求解:

       在Gaussian的噪声观测下的参数估计,常常转化为最优化问题,目标函数表示为:||g(x)||_W^2,其中,W是权系数矩阵,或者信息矩阵,或者协方差矩阵的逆。求解这个问题,即是一个典型的二次优化估计问题。通常有以下方法:

2.2.1 牛顿(Newton) 法:

Newton 法具有⼆阶收敛速度, 它通过对函数进⾏局部⼆次 Taylor 近似, 并求解近似⼆次函数的最优
解而进行迭代: 

                                                     g(x) \approx g(x_k) + h^T(x-x_k) + \frac{1}{2}(x-x_k)^TH(x-x_k)

其中h = g^{'}(x_k), Hessian\ Matrix H = g^{''}(x_k),因此每部迭代过程解:

                                                                            x_{k+1} = x_k - H^{-1}h

经典 Newton 算法有⼀些缺点:

  • 可能死循环;
  • 需要 Hessian,高维非线性函数应用不⽅便;
  • Hessian 可能不正定, 或者病态.

       许多算法通过修正这些缺点⽽改进经典 Newton 算法. 比如阻尼Newton 算法 (即信赖域化的 Newton 法), 通过在 Hessian 中加阻尼项 (H = H + λI) 确保良好的Hessian; 共轭梯度法在梯度的共轭⽅向进⾏搜索⽽改善死循环; 对⼆次优化问题, Gauss-Newton 使用线性近似推导迭代, 从⽽不需要计算 Hessian(更准确的说, 近似⽽不是直接计算 Hessian) 更适合⾼维非线性问题; 对 Gauss-Newton 进⾏阻尼化 (信赖域化的 Gauss-Newton ⽅法, 即 L-M 算法) 提升Gauss-Newton 算法的鲁棒性等.

2.2.2 高斯牛顿法(Gauss-Newton)

Gauss-Newton 将函数作线性近似:
                                                          g(x) \approx g(x_k) +J_k(x-x_k), J_k=g^{'}(x_k), g_k=g(x_k)

优化函数:

                                                                ||g(x)||^2 \approx [g_k +J_k(x-x_k)]^T[g_k +J_k(x-x_k)]

因此每部迭代过程解:

                                                                                x_{k+1} = x_k - (J_k^TJ_k)^{-1}Jk^Tg(x_k)

上式可以看出,J_k^TJ_k是目标函数g(x)的Hessian的近似,J_k^Tg(x_k)是梯度近似。但是优点很明显,只需呀求解目标函数的一阶导J即可。

2.2.3 Levenberg-Marquardt(LM)

       LM 是阻尼化 (信赖域) 的 Gauss-Newton 算法. 阻尼化通过阻尼系数 (信赖域通过信赖域半径) 衡量当前迭代线性近似的好坏程度, 近似较好时阻尼系数降低 (信赖域变⼤), 算法更接近 Newton 算法, 近似较差时阻尼系数变⼤(信赖域变小), 算法更接近最速下降算法. 设阻尼系数为 λ. LM 通过求解。
                                                              (J_k^TJ_k + \lambda D)\delta x = J_k^Tg_k

可由此公式得到迭代的更新量,其中D可取单位阵或者J_k^TJ_k的对角元素组成的矩阵。LM 算法的关键是调节阻尼系数, 其余完全类似 Gauss-Newton 算法。常构造类似于:

                                                             \rho = \frac{f(x+ \delta x) - f(x)}{J(x)^T \delta x} => \lambda

因⼦作为近似好坏程度的衡量, 以此调节阻尼系数并决定是否接受 \delta x用于迭代更新。

以上方法的详细迭代过程可以搜索相关博客或wiki

发布了6 篇原创文章 · 获赞 0 · 访问量 162

猜你喜欢

转载自blog.csdn.net/feiyang_luo/article/details/103334251