递归最小二乘算法详解
1. 递归最小二乘算法概述
在之前讨论的 LMS 算法中,滤波器系数通过随机梯度法逐步调整,以最终逼近维纳 - 霍夫最优解。而递归最小二乘(RLS)算法则采用了另一种方法。它迭代更新 $(L × L)$ 自相关矩阵 $R_{xx}$ 和互相关向量 $r_{dx}$,每次有新的数据对 $(x[n], d[n])$ 到来时进行更新。
1.1 基本计算过程
- 自相关矩阵更新 :
每个新的 $x[n]$ 被放入长度为 $L$ 的数据数组 $x[n] = [x[n] x[n - 1] \cdots x[n - (L - 1)]]^T$ 中。自相关矩阵的递归计算如下:
[R_{xx}[n + 1] = R_{xx}[n] + x[n]x^T[n] = \sum_{s = 0}^{n} x[s]x^T[s]] - 互相关向量更新 :
对于互相关向量 $r_{dx}[n + 1]$,每次新的数据对 $(x[n], d[n])$ 到来时,将向量 $d[n]x[n]$ 加到 $r_{dx}[n]$ 的先前估计上,递归公式为:
[r_{dx}[n + 1] = r_{dx}[n] + d[n]x[n]] - 滤波器系数更新 :
利用维纳 - 霍夫方程进行时间递归计算:
[R_{xx}[n + 1]f_{opt}[n + 1] = r_{dx}[n + 1]]
滤波器系数更新公式为:
[f_{opt}[n + 1] = R_{xx}^{
超级会员免费看
订阅专栏 解锁全文
78

被折叠的 条评论
为什么被折叠?



