卡尔曼滤波、最小二乘法、维纳滤波之我见

卡尔曼滤波、最小二乘法、维纳滤波之我见

算法要抓住三个方面:模型、策略、求解的方法。

算法 模型 策略 求解的方法
最小二乘法 传递函数 误差平方和最小 目标函数导数为0
卡尔曼滤波 状态空间 均方差最小 先预测,后修正
维纳滤波 传递函数 均方差最小 目标函数导数为0

其实,你说最小二乘可以用在状态空间上吗?完全可以,只要知道状态及其导数就可以。但是跟卡尔曼滤波本质不同在于,需要均方差最小,所以可以定义一种概率分布,使二者相等。
最小二乘法被玩出花的是序贯最小二乘,最容易让人和卡尔曼滤波分不清,因为大家都是迭代求解。但是其实仔细看,其实序贯最小二乘是假设:
wk+1=[wk, Δ \Delta Δw]
然后寻找 Δ \Delta Δw使
min||wk+1x-y||2=min|| Δ \Delta Δw x- Δ \Delta Δy||2
可以看见,与卡尔曼滤波比较:1.这里没有预测;2.这里的策略不同。反而使通过简单变形,就可以变成在线的关于差值系统的最小二乘,因此尽管是不断迭代,还是算作最小二乘方法。

同时,也有人用卡尔曼滤波解决最小二乘可以解决的问题,当然可以,但是需要先把模型换成状态空间模型,这个是刚需啊。。
比如拟合曲线,就需要用离散的状态空间模型,只不过:
xk+1=xk+v
也就是状态空间的A矩阵变成了单位阵。

详细一点:
频域:最小二乘滤波、维纳滤波;
时域:卡尔曼滤波。

最小二乘滤波与维纳滤波均是对系统的频域特性进行估计,得到系统的传递函数。
卡尔曼滤波对系统的描述,是基于状态空间的描述,即估计系统的内部状态量,进而对系统进行描述。

从方法上讲,最小二乘寻找的是一种投影方法,可以把输出空间投影到输入空间张成的子空间上,并使误差最小(误差与子空间垂直时,最小),关注误差的二范数最小
维纳滤波关注误差的均方误差,即二范数的均值最小。
卡尔曼滤波亦为关注误差的均方误差,但是可以适应于非平稳过程。

你可能感兴趣的:(自适应滤波)