现代数字信号处理——维纳滤波原理及自适应算法

一、维纳滤波器基本理论

1、自适应横向滤波器

现代数字信号处理——维纳滤波原理及自适应算法_第1张图片

  • w i ∗ w_i^* wi:滤波器权系数
  • w = [ w 0 , w 1 , ⋯   , w M − 1 ] w=[w_0,w_1,\cdots,w_{M-1}] w=[w0,w1,,wM1]:滤波器权向量
  • d ( n ) d(n) d(n):期望响应
  • d ^ ( n ) = ∑ i = 0 M − 1 w i ∗ u ( n − i ) = w H u ( n ) = u T ( n ) w ∗ \hat{d}(n)=\sum_{i=0}^{M-1}w_i^*u(n-i)=w^Hu(n)=u^T(n)w^* d^(n)=i=0M1wiu(ni)=wHu(n)=uT(n)w:对期望响应的估计
  • e ( n ) = d ( n ) − d ^ ( n ) e(n)=d(n)-\hat{d}(n) e(n)=d(n)d^(n):估计误差

2、均方误差准则

e ( n ) = d ( n ) − d ^ ( n ) = d ( n ) − w H u ( n ) = d ( n ) − u T ( n ) w ∗ J ( w ) = E { ∣ e ( n ) ∣ 2 } = E { e ( n ) e ∗ ( n ) } = E { ∣ d ( n ) ∣ 2 } − E { d ( n ) u H ( n ) } w − w H E { u ( n ) d ∗ ( n ) } + w H E { u ( n ) u H ( n ) } w = σ d 2 − p H w − w H p + w H R w e(n)=d(n)-\hat{d}(n)=d(n)-w^Hu(n)=d(n)-u^T(n)w^*\\J(w)=E\{|e(n)|^2\}=E\{e(n)e^*(n)\}\\=E\{|d(n)|^2\}-E\{d(n)u^H(n)\}w-w^HE\{u(n)d^*(n)\}+w^HE\{u(n)u^H(n)\}w\\=\sigma_d^2-p^Hw-w^Hp+w^HRw e(n)=d(n)d^(n)=d(n)wHu(n)=d(n)uT(n)wJ(w)=E{e(n)2}=E{e(n)e(n)}=E{d(n)2}E{d(n)uH(n)}wwHE{u(n)d(n)}+wHE{u(n)uH(n)}w=σd2pHwwHp+wHRw
现代数字信号处理——维纳滤波原理及自适应算法_第2张图片
\quad J ( w ) J(w) J(w)是凸函数,且开口向上。

3、维纳-霍夫方程

\quad 如何求得最优权向量呢?因为 J ( w ) J(w) J(w)是凸函数,因此对 J ( w ) J(w) J(w)求导为0的结果就是答案。 Δ J ( w ) = − 2 p + 2 R w = 0 R w 0 = p 因 为 R 非 奇 异 , 最 优 权 向 量 w 0 = R − 1 p \Delta J(w)=-2p+2Rw=0\\Rw_0=p\\因为R非奇异,最优权向量w_0=R^{-1}p ΔJ(w)=2p+2Rw=0Rw0=pRw0=R1p
\quad 这就是最小均方误差准则——使误差的平均功率最小。

4、正交原理

R w 0 = p → R w 0 − p = 0 E { u ( n ) u H ( n ) } w 0 − E { u ( n ) d ∗ ( n ) } = 0 E { u ( n ) [ u H ( n ) w 0 − d ∗ ( n ) ] } = 0 E { u ( n ) e o ∗ ( n ) } = 0 → E { u ( n − i ) e o ∗ ( n ) } = 0 Rw_0=p \rightarrow Rw_0-p=0\\E\{u(n)u^H(n)\}w_0-E\{u(n)d^*(n)\}=0\\E\{u(n)[u^H(n)w_0-d^*(n)]\}=0\\E\{u(n)e^*_o(n)\}=0\rightarrow E\{u(n-i)e^*_o(n)\}=0 Rw0=pRw0p=0E{u(n)uH(n)}w0E{u(n)d(n)}=0E{u(n)[uH(n)w0d(n)]}=0E{u(n)eo(n)}=0E{u(ni)eo(n)}=0

  • 估计误差 e 0 ( n ) e_0(n) e0(n)与所有抽头的输入信号 u ( n − i ) u(n-i) u(ni)相互正交
  • E { d ^ 0 ( n ) e o ∗ ( n ) } = w o H E { u ( n ) e o ∗ ( n ) } = 0 E\{\hat{d}_0(n)e^*_o(n)\}=w_o^HE\{u(n)e^*_o(n)\}=0 E{d^0(n)eo(n)}=woHE{u(n)eo(n)}=0,所以 d ^ 0 与 e 0 ( n ) \hat{d}_0与e_0(n) d^0e0(n)也相互正交

5、最小均方误差

当 R w 0 = p 时 J m i n = σ d 2 − p H w 0 = σ d 2 − w 0 H R w 0 = σ d 2 − w 0 H E { u ( n ) u H ( n ) } w 0 = σ d 2 − w 0 H E { [ w 0 H u ( n ) ] [ w 0 H u ( n ) ] ∗ } 当Rw_0=p时J_{min}=\sigma_d^2-p^Hw_0=\sigma_d^2-w_0^HRw_0\\=\sigma_d^2-w_0^HE\{u(n)u^H(n)\}w_0=\sigma_d^2-w_0^HE\{[w_0^Hu(n)][w_0^Hu(n)]^*\} Rw0=pJmin=σd2pHw0=σd2w0HRw0=σd2w0HE{u(n)uH(n)}w0=σd2w0HE{[w0Hu(n)][w0Hu(n)]}
\quad J m i n = σ d 2 − E { ∣ d ^ ( n ) ∣ 2 } = σ d 2 − σ d ^ 2 J_{min}=\sigma_d^2-E\{|\hat{d}(n)|^2\}=\sigma_d^2-\sigma_{\hat{d}}^2 Jmin=σd2E{d^(n)2}=σd2σd^2,最小均方误差就是期望响应的平均功率与最优滤波器输出的估计信号的平均功率之差。

二、维纳滤波求解——最陡下降法

\quad 利用维纳霍夫方程求解需要计算矩阵 R R R的逆,计算量大。沿着 J ( w ) J(w) J(w)的负梯度方向调整 w w w可以寻到最优权向量。 w ( n + 1 ) = w ( n ) + Δ w , Δ w = − 1 2 μ Δ J ( w ( n ) ) Δ J ( w ( n ) ) = − 2 p + 2 R w w ( n + 1 ) = w ( n ) + μ [ p − R w ( n ) ] w(n+1)=w(n)+\Delta w,\Delta w=-\frac{1}{2}\mu \Delta J(w(n))\\ \Delta J(w(n))=-2p+2Rw\\ w(n+1)=w(n)+\mu[p-Rw(n)] w(n+1)=w(n)+Δw,Δw=21μΔJ(w(n))ΔJ(w(n))=2p+2Rww(n+1)=w(n)+μ[pRw(n)]
\quad 如果步长因子满足 0 < μ < 2 λ m a x , λ m a x 为 R 的 最 大 特 征 值 0<\mu < \frac{2}{\lambda_{max}},\lambda_{max}为R的最大特征值 0<μ<λmax2,λmaxR,那么最陡下降法会逐步逼近极小值。
\quad 如果步长满足上述式子,则均方误差 J ( n ) J(n) J(n)关于时间 n n n是一个单调递减函数,且 l i m n → ∞ J ( n ) = J m i n lim_{n\rightarrow \infty} J(n)=J_{min} limnJ(n)=Jmin

三、随机梯度算法LMS

\quad 梯度下降算法缺点在于当 P , R P,R P,R确定时,迭代过程和结果就确定了;与输入信号变换无关,不具有自适应性。
\quad 在LMS中,用n时刻的瞬时估计值 R ^ = u ( n ) u H ( n ) , p ^ = u ( n ) d ∗ ( n ) \hat{R}=u(n)u^H(n),\hat{p}=u(n)d^*(n) R^=u(n)uH(n),p^=u(n)d(n)代替统计量 R , p R,p R,p,则可得 Δ ^ J ( n ) = − 2 p ^ + 2 R ^ w ( n ) = − 2 u ( n ) e ∗ ( n ) \hat{\Delta}J(n)=-2\hat{p}+2\hat{R}w(n)=-2u(n)e^*(n) Δ^J(n)=2p^+2R^w(n)=2u(n)e(n)

LMS算法

  • 1.初始化 n = 0 ; 权 向 量 w ^ ( 0 ) = 0 ; 估 计 误 差 e ( 0 ) = d ( 0 ) − d ^ ( 0 ) = d ( 0 ) = 0 ; 输 入 向 量 u ( 0 ) = [ u ( 0 ) , u ( − 1 ) , ⋯   , u ( − M + 1 ) ] T = [ u ( 0 ) , 0 , ⋯   , 0 ] T n=0;权向量\hat{w}(0)=0;估计误差e(0)=d(0)-\hat{d}(0)=d(0)=0;输入向量u(0)=[u(0),u(-1),\cdots,u(-M+1)]^T=[u(0),0,\cdots,0]^T n=0w^(0)=0e(0)=d(0)d^(0)=d(0)=0u(0)=[u(0),u(1),,u(M+1)]T=[u(0),0,,0]T
  • 2.对 n = 0 , 1 , 2 , ⋯ n=0,1,2,\cdots n=0,1,2, 权 向 量 更 新 w ^ ( n + 1 ) = w ^ ( n ) + μ u ( n ) e ∗ ( n ) ; 期 望 信 号 估 计 d ^ ( n + 1 ) = w ^ H ( n + 1 ) u ( n + 1 ) ; 估 计 误 差 e ( n + 1 ) = d ( n + 1 ) − d ^ ( n + 1 ) 权向量更新\hat{w}(n+1)=\hat{w}(n)+\mu u(n)e^*(n);期望信号估计\hat{d}(n+1)=\hat{w}^H(n+1)u(n+1);估计误差e(n+1)=d(n+1)-\hat{d}(n+1) w^(n+1)=w^(n)+μu(n)e(n)d^(n+1)=w^H(n+1)u(n+1)e(n+1)=d(n+1)d^(n+1)
  • 3.令n=n+1,转到步骤2

\quad LMS算法的收敛条件与普通梯度下降相同,即 0 < μ < 2 λ m a x , λ m a x 为 R 的 最 大 特 征 值 0<\mu < \frac{2}{\lambda_{max}},\lambda_{max}为R的最大特征值 0<μ<λmax2,λmaxR
\quad LMS算法的统计特性

  • 均值 E { J ^ ( ∞ ) } = J m i n ( 1 + μ ∑ i = 1 M λ i 2 − μ ∑ i = 1 M λ i ) E\{\hat{J}(\infty)\}=J_{min}(1+\frac{\mu \sum_{i=1}^M\lambda_i}{2-\mu \sum_{i=1}^M\lambda_i}) E{J^()}=Jmin(1+2μi=1Mλiμi=1Mλi),其中 λ i \lambda_i λi是自相关矩阵 R R R的全部特征值
  • μ \mu μ满足不等式 0 < μ < 2 ∑ i = 1 M λ i = 2 输 入 总 功 率 0<\mu < \frac{2}{\sum_{i=1}^M\lambda_i}=\frac{2}{输入总功率} 0<μ<i=1Mλi2=2 r ( 0 ) r(0) r(0)即为输入信号 u ( n ) u(n) u(n)的总功率
  • 剩余均方误差 J e x ( ∞ ) = E { J ^ ( ∞ ) } − J m i n J_{ex}(\infty)=E\{\hat{J}(\infty)\}-J_{min} Jex()=E{J^()}Jmin
  • 失调参数 M = J e x ( ∞ ) J m i n = μ ∑ i = 1 M λ i 2 − μ ∑ i = 1 M λ i M=\frac{J_{ex}(\infty)}{J_{min}}=\frac{\mu \sum_{i=1}^M\lambda_i}{2-\mu \sum_{i=1}^M\lambda_i} M=JminJex()=2μi=1Mλiμi=1Mλi
  • 平均时间常数表征LMS算法的平均收敛速度 τ a v = 1 2 μ λ a v \tau_{av}=\frac{1}{2\mu \lambda_{av}} τav=2μλav1 λ a v \lambda_{av} λav为自相关矩阵R的特征值的平均值。
  • 收敛速度不仅与步长有关,还与相关矩阵的特征值有关。定义 X ( R ) = λ m a x λ m i n X(R)=\frac{\lambda_{max}}{\lambda_{min}} X(R)=λminλmax,当 X ( R ) X(R) X(R)非常大时,称R是病态的,其值越大,SD和LMS算法收敛速度越慢。

\quad 如果 μ \mu μ增大,收敛速度增大,但稳态性能 M M M变差。一般使用变步长,先大后小。

变步长LMS算法

\quad 步长 μ ( n ) \mu (n) μ(n)随着 e ( n ) e(n) e(n)的变化而变换: μ ( n + 1 ) = α μ ( n ) + λ ∣ e ( n ) ∣ 2 \mu(n+1)=\alpha \mu(n)+\lambda|e(n)|^2 μ(n+1)=αμ(n)+λe(n)2

归一化LMS算法

\quad 可以有效避免LMS算法噪声放大的问题: w ^ ( n + 1 ) = w ^ ( n ) + μ ∣ u ( n ) ∣ 2 u ( n ) e ∗ ( n ) \hat{w}(n+1)=\hat{w}(n)+\frac{\mu}{|u(n)|^2} u(n)e^*(n) w^(n+1)=w^(n)+u(n)2μu(n)e(n)

泄露LMS算法

\quad 为了提升计算时的数值稳定性: w ^ ( n + 1 ) = ( 1 − μ α ) w ^ ( n ) + μ u ( n ) e ∗ ( n ) , 0 < α < 1 / μ \hat{w}(n+1)=(1-\mu\alpha)\hat{w}(n)+\mu u(n)e^*(n),0<\alpha <1/\mu w^(n+1)=(1μα)w^(n)+μu(n)e(n),0<α<1/μ

四、多级维纳滤波

\quad 对任意的非奇异变换矩阵 T 1 ∈ C M ∗ M T_1\in C^{M*M} T1CMM作用于观测向量 u 0 ( n ) u_0(n) u0(n),有 z 1 = T 1 u 0 ( n ) z_1=T_1u_0(n) z1=T1u0(n)。对观测数据 u 0 ( n ) u_0(n) u0(n)进行可逆的满秩变换,不会改变维纳滤波器的估计输出和最小均方误差。
现代数字信号处理——维纳滤波原理及自适应算法_第3张图片现代数字信号处理——维纳滤波原理及自适应算法_第4张图片
现代数字信号处理——维纳滤波原理及自适应算法_第5张图片

  • u 1 ( n ) = B 1 u 0 ( n ) , d 1 ( n ) = h 1 H u 0 ( n ) u_1(n)=B_1u_0(n),d_1(n)=h_1^Hu_0(n) u1(n)=B1u0(n),d1(n)=h1Hu0(n)
  • R 1 = E { u 1 ( n ) u 1 H ( n ) } = B 1 R 0 B 1 H R_1=E\{u_1(n)u_1^H(n)\}=B_1R_0B_1^H R1=E{u1(n)u1H(n)}=B1R0B1H
  • p 1 = E { u 1 ( n ) d 1 ∗ ( n ) } = B 1 R 0 h 1 p_1=E\{u_1(n)d^*_1(n)\}=B_1R_0h_1 p1=E{u1(n)d1(n)}=B1R0h1
  • R 1 w 2 = p 1 ( 维 纳 霍 夫 方 程 ) R_1w2=p_1(维纳霍夫方程) R1w2=p1()
  • σ d 1 2 = E { ∣ d 1 ( n ) ∣ 2 } = h 1 H R 0 h 1 \sigma_{d1}^2=E\{|d_1(n)|^2\}=h_1^HR_0h_1 σd12=E{d1(n)2}=h1HR0h1
  • δ 1 = h 1 H p 0 = ∣ ∣ p 0 ∣ ∣ \delta_1=h_1^Hp_0=||p_0|| δ1=h1Hp0=p0
  • w 1 = δ 1 σ d 1 2 − p 1 H R 1 − 1 p 1 w_1=\frac{\delta_1}{\sigma_{d1}^2-p_1^HR_1^{-1}p_1} w1=σd12p1HR11p1δ1
  • 最小均方误差 σ d 1 2 − p 1 H R 1 − 1 p 1 \sigma_{d1}^2-p_1^HR_1^{-1}p_1 σd12p1HR11p1

基于输入信号统计特性的权值计算步骤

现代数字信号处理——维纳滤波原理及自适应算法_第6张图片
现代数字信号处理——维纳滤波原理及自适应算法_第7张图片
现代数字信号处理——维纳滤波原理及自适应算法_第8张图片

构造阻塞矩阵

\quad 我们需要根据 h m = [ θ 1 , ⋯   , θ M − m + 1 ] h_m=[\theta_1,\cdots,\theta_{M-m+1}] hm=[θ1,,θMm+1]构造阻塞矩阵 B m B_m Bm,使得 B m h m = 0 B_mh_m=0 Bmhm=0,下图是一种构造:
现代数字信号处理——维纳滤波原理及自适应算法_第9张图片

基于观测数据的权值递推算法

\quad 基于观测数据统计特性的多级维纳滤波器权值递推中需要计算逆矩阵 R m − 1 R_m^{-1} Rm1,这里给出无需计算逆矩阵的递推法。

你可能感兴趣的:(现代数字信号处理)