最小二乘法、最大似然估计和卡尔曼滤波

一、最小二乘法和最大似然估计

最小二乘法可以从Cost/Loss function角度去想,这是统计(机器)学习里面一个重要概念,一般建立模型就是让loss function最小,而最小二乘法可以认为是 loss function = (y_hat -y )^2的一个特例,类似的想各位说的还可以用各种距离度量来作为loss function而不仅仅是欧氏距离。所以loss function可以说是一种更一般化的说法。

最大似然估计是从概率角度来想这个问题,直观理解,似然函数在给定参数的条件下就是观测到一组数据realization的概率(或者概率密度)。最大似然函数的思想就是什么样的参数才能使我们观测到目前这组数据的概率是最大的。

类似的从概率角度想的估计量还有矩估计(moment estimation)。就是通过一阶矩 二阶矩等列方程,来反解出参数。

各位有人提到了正态分布。最大似然估计和最小二乘法还有一大区别就是,最大似然估计是需要有分布假设的,属于参数统计,如果连分布函数都不知道,又怎么能列出似然函数呢? 而最小二乘法则没有这个假设。 二者的相同之处是都把估计问题变成了最优化问题。但是最小二乘法是一个凸优化问题,最大似然估计不一定是。
 

从优化的角度上来讲,负的log likelihood 就是求MLE要优化的目标函数。
那么为啥MLE需要设置分布这么麻烦,还有这么多应用,因为当likelihood设置正确的时候,这个目标函数给出的解最efficient。
那么为啥有这么多人把MLE和OLSE搞混,因为当likelihood用的是gaussian的时候,由于gaussian kernel里有个类似于Euclidean distance的东西,一求log就变成square loss了,导致解和OLSE是一样的。而碰巧刚接触MLE的时候基本都是gaussian假设,这才导致很多人分不清楚。

最大似然估计和最小二乘法怎么理解?

二、最小二乘法和卡尔曼滤波

常用的估计准则包括: 

  1. 无偏估计:估计量的均值等于真实值,即具体每一次估计值可能大于真实值,也可能小于真实值,而不能总是大于或小于真实值(这就产生了系统误差)。
  2. 最小二乘估计:不考虑数据的统计特性,如期望,方差等,直接用最小二乘法得到最优估计。 
  3. 误差方差最小:在满足最小二乘估计的同时,使得估计的误差方差最小。这一约束可以通过一系列等价的推导获得,前提是要事先知道测量数据噪声的方差。 

简单来说就是,满足误差方差最小必满足误差平方和最小,反之不成立。而无偏估计是最基本假设。

  • 最小二乘估计是方差最小的无偏估计。
  • 最小二乘法有三种:常量估计、加权最小二乘估计、递推最小二乘估计

1、递推最小二乘法

也是想使方差之和最小,然后发现,方差之和就是状态的协方差矩阵的迹,迹里面又包含了K,所以也就是求K使得迹最小

递推最小二乘估计:

可见相比递推最小二乘法,卡尔曼就是相当于在两次迭代之间多了一步系统的状态转移,也就是这一项。

其实,卡尔曼滤波就是递推最小二乘法的一种特殊情况,卡尔曼滤波也是去通过最小化方差来求得最优的估计值。

三、贝叶斯滤波和卡尔曼滤波

贝叶斯原理的实质是希望用所有一直信息来构造系统状态变量的后验概率密度,即用系统模型预测状态的先验概率密度,再用最新的观测数据进行修正,得到后验概率密度。通过观测数据来计算状态变量取不同值的置信度,由此获得状态的最优估计。

卡尔曼滤波是贝叶斯滤波的一种特例,是在线性滤波的前提下,以最小均方误差为最佳准则的。采用最小均方误差准则作为最佳滤波准则的原因在于这种准则下的理论分析比较简单,因而可以得到解析结果。贝叶斯估计和最大似然估计都要求对观测值作概率描述,线性最下均方误差估计却放松了要求,不再设计所用的概率假设,而只保留对前两阶矩的要求。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章