递归最小二乘(RLS)算法详解

欢迎扫描左侧二维码,或微信搜索“工科南”关注公众号!

1.最小二乘算法简介

最小二乘算法基于确定性思想,该算法讨论怎样根据有限个观测数据来寻找滤波器的最优解,即求如下图这样具有M个抽头的横向滤波器的最优权向量。

最小二乘算法的目的就是通过最小化误差向量$\vec{e}$的模的平方和,即最小化$J = | \vec{e} | ^{2}$,来求解得到最优权向量:

$$\vec{w}=[w_{0} \quad w_{1} \cdots w_{M-1}]$$

由于:

$$\vec{e}=[e(M) \quad e(M+1) \cdots e(N)]^{H}=\vec{b}-\vec{\hat{b}}=\vec{b}-A \vec{w}$$

其中:

  • 滤波器阶数:$M$
  • 样本点数:$N$
  • 误差向量:$\vec{e}=[e(M) \quad e(M+1) \cdots e(N)]$
  • 期望向量:$\vec{b}=[d(M) \quad d(M+1) \cdots d(N)]$
  • 数据矩阵:$A^{H}=[\vec{u}(M) \quad \vec{u}(M+1) \cdots\vec{u}(N)]=
    \begin{bmatrix}
    u(M) & u(M+1) & \cdots & u(N) \\
    u(M-1) & u(M) & \cdots & u(N-1) \\
    \vdots & \vdots & \ddots & \vdots \\
    u(1) & u(2) & \cdots & u(N-M+1) \\
    \end{bmatrix}$

由此可以得到:

$$J = | \vec{e} | ^{2}=\vec{e}^{H} \vec{e}=(\vec{b}-A \vec{w})^{H}(\vec{b}-A \vec{w})$$

化简得:
$$J = \vec{b}^{H} \vec{b}-\vec{b}^{H} A \vec{w}-\vec{w}^{H} A^{H} \vec{b}+\vec{w}^{H} A^{H} A \vec{w}$$

要求$J$的最小值,首先要得到$J$关于$\vec{w}$的梯度:

$$\bigtriangledown J=-2A^{H}\vec{b}+2A^{H}A\vec{w}$$

再令$\bigtriangledown J=0$得:

$$A^{H}A \vec{\hat{w}} =A^{H}\vec{b}\quad (1)$$

上式被称为确定性正则方程

当$M<N-M+1$时,若方阵$A^{H}A$是非奇异(可逆)的,则可以得到确定性正则方程的解:

$$\vec{\hat{w}}=(A^{H}A)^{-1}A^{H}\vec{b}\quad (2)$$

上式也被称为最小二乘$(LS)$解。

估计向量$\vec{\hat{b}}=A \vec{w}$被称为对期望响应向量$\vec{b}$的最小二乘估计,简称$LS$估计。

2.递归最小二乘$(RLS)$算法

在(2)式中,涉及矩阵$A^{H}A$的求逆运算,运算量较大,递归最小二乘$(RLS)$算法就是用迭代算法代替矩阵求逆达到降低运算量的目的。

将数据矩阵$A^{H}$做如下扩展:

$$A^{H}= \begin{bmatrix}
u(1) & u(2) & \cdots & u(M) & \cdots & u(N) \\
0 & u(1) & \cdots & u(M-1) & \cdots & u(N-1) \\
\vdots & \vdots & \ddots & \vdots & \ddots & \vdots\\
0 & 0 & \cdots & u(1) & \cdots &u(N-M+1) \\
\end{bmatrix}$$

将期望向量$\vec b$做如下扩展:
$$\vec{b}=[d(1) \quad d(2) \cdots d(M) \cdots d(N)]$$

定义输入数据数据的时间相关矩阵:
$$\Phi(N)=A^{H}A=\sum_{i=1}^{N}\vec{u}(i)\vec{u}^{H}(i)$$

定义时间互相关向量为
$$\vec{z}(N)=A^{H}\vec{b}=\sum_{i=1}^{N}\vec{u}(i)d^{*}(i)$$

于是,如式(1)所示的确定性正则方程变成下式:
$$\Phi(N)\vec{\hat{w}}=\vec{z}(N)\quad(3)$$

(3)式就是N时刻的确定性正则方程

将N时刻变为任意时刻n,并引入遗忘因子$\lambda(0<\lambda \leq1)$,则$\Phi$、$z$和(3)式变成如下所示:
$$\Phi(n)=\sum_{i=1}^{n}\lambda^{n-i}\vec{u}(i)\vec{u}^{H}(i)+\delta \lambda ^{n}I$$

$$z(n)=\sum_{i=1}^{n}\lambda^{n-i}\vec{u}(i)d^{*}(i)$$

$$\Phi(n)\vec{\hat{w}}=\vec{z}(n)$$

注:$\Phi(n)$中引入$\delta \lambda ^{n}I$是为了使$\Phi(n)$可逆。

令$P(n)=\Phi^{-1}(n)$,接下来需要的事情就是求出$\vec{\hat{w}}$的迭代公式,推导过程较为繁琐,在此不再展开,直接给出最后的迭代公式。
$$\vec{\hat{w}}(n)=\vec{\hat{w}}(n-1)+\vec{k}(n) \xi ^{*}(n)$$
其中:
$$\vec{k}(n)=\frac{\lambda ^{-1}P(n-1)\vec{u}(n)}{1+\lambda ^{-1}\vec{u}^{H}(n)P(n-1)\vec{u}(n)}$$
$$\xi(n)=d(n)-\vec{\hat{w}}(n-1)\vec{u}(n)$$
$$P(n)=\lambda ^{-1}P(n-1)-\lambda ^{-1}\vec{k}(n)\vec{u}^{H}(n)P(n-1)$$
可以看到$\vec{\hat{w}}(n)$迭代式中的变量$P(n)、\vec{k}(n))、\xi(n)$都是可以迭代求解的。

2.1 $(RLS)$算法步骤

1. 初始化:
$$P(0) = \delta I \quad, \delta 是小正数 $$

$$\vec{\hat{w}}(0)=\vec{0}$$

$$\lambda取接近于1$$

2. $n=1,2,\cdots,N$时,做如下迭代运算:
$$\vec{k}(n)=\frac{\lambda ^{-1}P(n-1)\vec{u}(n)}{1+\lambda ^{-1}\vec{u}^{H}(n)P(n-1)\vec{u}(n)}$$

$$\xi(n)=d(n)-\vec{\hat{w}}(n-1)\vec{u}(n)$$

$$\vec{\hat{w}}(n)=\vec{\hat{w}}(n-1)+\vec{k}(n) \xi ^{*}(n)$$

$$P(n)=\lambda ^{-1}P(n-1)-\lambda ^{-1}\vec{k}(n)\vec{u}^{H}(n)P(n-1)$$

3. 令$n=n+1$,重复步骤2。

2.2 算例

考虑一阶$AR$模型$u(n)=-0.99u(n-1)+v(n)$的线性预测。假设白噪声$v(n)$的方差为$\sigma_{v}^{2}=0.995$,使用抽头数为$M=2$的$FIR$滤波器,用$RLS$算法实现$u(n)$的线性预测,选择遗忘因子$\lambda = 0.98$。

2.3 $Matlab$仿真结果

可以看到$RLS$算法收敛的速度很快,收敛特性相当好。

图1 500次独立重复实验的学习曲线
图2 500次独立重复实验的权向量曲线

2.4 $Matlab$源码下载

点此下载源码!

欢迎大家关注我的微信公众号“工科南”!

你可能也喜欢

7 thoughts on “递归最小二乘(RLS)算法详解

  1. Photography prevacid onset of action Civilian casualties have been a long-running source of friction between Afghan President Hamid Karzai and his international backers. Karzai has forbidden Afghan troops from calling for foreign air strikes, though the ban is not always adhered to.

  2. Yes, I love it! premama lactation support drink mix reviews Regulatory filings on Wednesday from hedge funds and otherinvestment firms reveal how big money managers reshaped theirportfolios in the quarter. Their so-called 13F filings with theU.S. Securities and Exchange Commission offer a window into thestrategies of managers when it comes to buying and selling U.S.stocks.

  3. Why did you come to ? allegra 24 yacht for sale The billboards, which came up in the city of Allahabad and have now been pulled down, referred to Congress chief Sonia Gandhi, who travels occasionally to the US for medical check-ups, as "ill" and urged her daughter Priyanka to join politics.

发表评论

电子邮件地址不会被公开。