信号处理学习笔记5——自适应滤波器3-LMS自适应滤波器

本文深入解析LMS算法,一种线性自适应滤波算法。详细介绍了LMS算法的基本理论、公式推导、特性及归一化LMS算法,强调其在实际应用中的优势和局限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

    LMS算法全称最小均方算法(least mean square),是一种线性自适应滤波算法。它不需要计算相关函数,也不需要矩阵求逆计算。由于其简单性(计算量小),LMS算法成为其它线性自适应滤波算法的参照标准。
  LMS一般包含两个基本过程:

  1. 滤波过程:a. 计算线性滤波器输出对输入信号的响应;b. 通过比较输出结果与期望响应产生估计误差
  2. 自适应过程:根据估计误差自动调整滤波器参数

1. LMS自适应滤波器基本理论

1.1 基本框架

    典型的LMS自适应滤波器结构如下图所示:
在这里插入图片描述    其中,u(n)\bold u(n)u(n)是输入,d(n)\bold d(n)d(n)是期望输出,e(n)\bold e(n)e(n)是误差信号,d^(n∣Un)\bold{\hat{d}(n|U_n)}d^(nUn)是滤波后的信号,Un\bold{U_n}Un代表由u(n)\bold u(n)u(n)张成的线性空间。
  LMS算法对信号的要求与维纳滤波一致:输入信号u(n)\bold u(n)u(n)和期望响应d(n)\bold d(n)d(n)广义联合平稳。

1.2 公式推导

    先看下最速下降法用于维纳滤波的迭代公式,如下:
∇J(n)=−2p+2Rw(n)\nabla {\bold J(n)}=-2\bold p+2\bold R \bold w(n)J(n)=2p+2Rw(n)
w(n+1)=w(n)+μ[p−Rw(n)]{\bold w(n+1)}=\bold w(n)+μ[\bold p - \bold{Rw}(n)]w(n+1)=w(n)+μ[pRw(n)]
    其中,R\bold RR是输入信号的相关矩阵,p\bold pp是输入与期望响应之间的互相关向量。
    如果每一次迭代时都可以精确计算梯度向量∇J(n)\nabla J(n)J(n),而且步长参数μμμ选取合适,那这就是最速下降法在维纳滤波中的应用了,最终抽头权值向量将收敛于维纳解。这当然很完美。
    但是,这需要事先知道输入信号的相关矩阵RRR以及输入与期望响应之间的互相关向量ppp。在实际应用中,这一般是不可能的。
    最明显的方法是利用输入信号和期望响应对R和p进行估计,这就是LMS算法!仅考虑实信号时,公式如下:
  R^(n)=u(n)uT(n)\hat{\bold R}(n)=\bold u(n)\bold u^T(n)R^(n)=u(n)uT(n)
  p^(n)=u(n)d(n)\hat{\bold p}(n)=\bold u(n)\bold d(n)p^(n)=u(n)d(n)
  这时,每次迭代时梯度向量的瞬态估计为
  ∇^J(n)=−2u(n)d(n)+2u(n)uT(n)w^(n)\hat{\nabla}{\bold J}(n)=-2\bold u(n)\bold d(n)+2\bold u(n)\bold u^T(n)\hat{\bold w}(n)^J(n)=2u(n)d(n)+2u(n)uT(n)w^(n)
  将上式用于最速下降算法,即可得LMS算法的抽头权值更新公式:
  w^(n+1)=w^(n)+μu(n)[d(n)−uT(n)w^(n)]\hat{\bold w}(n+1)=\hat{\bold w}(n)+μ\bold u(n)[\bold d(n)-\bold u^T(n)\hat{\bold w}(n)]w^(n+1)=w^(n)+μu(n)[d(n)uT(n)w^(n)]
方括号中其实就是估计误差。
  因此,最速下降算法和LMS算法的本质区别是:前者用事先知道的R和p,每次迭代时的梯度是精确的,而LMS是每次迭代时都对梯度进行瞬态估计。

1.3 LMS算法的特性

  • 收敛条件
        LMS算法是一个高度非线性的滤波算法,并且带有反馈。既然带有反馈,就存在滤波器是否收敛的问题。参考文献[1]中推导了LMS滤波器的收敛条件,结论如下:
      当LMS滤波器 的长度M为中等长度或较大长度时,LMS收敛的必要条件是:
      0&lt;μ&lt;2MSmax0&lt;μ&lt;\frac{2}{MS_{max}}0<μ<MSmax2
      其中SmaxS_{max}Smax表示输入信号功率谱密度的最大值。
      当当LMS滤波器 的长度M较小时,没有关于μμμ的具体上届。
  • 额外均方误差和失调
        在迭代次数趋向无穷大时,最速下降法可达到最优,并且可获得最小均方误差JminJ_{min}Jmin
      但是,LMS算法仅是最速下降法的近似。在无穷次迭代后,LMS无法达到最优,记LMS可获得的均方误差为J(∞)J(∞)J()。则:
      J(∞)−JminJ(∞)-J_{min}J()Jmin称为额外均方误差;
      J(∞)Jmin\frac{J(∞)}{J_{min}}JminJ()称为失调

2. 归一化LMS自适应滤波器

2.1 基本思想与理论推导

    如前所述,由于每次迭代时利用当前的输入数据和期望输出估计R\bold RRp\bold pp,导致LMS算法相对最速下降法存在失调。当输入数据u(n)\bold u(n)u(n)较大时,标准LMS算法的梯度噪声进一步放大,失调量与u(n)\bold u(n)u(n)成正比。
  重新考虑标准LMS算法中w^(n+1)\hat{\bold w}(n+1)w^(n+1)的更新公式:
  w^(n+1)=w^(n)+μu(n)[d(n)−uT(n)w^(n)]\hat{\bold w}(n+1)=\hat{\bold w}(n)+μ\bold u(n)[\bold d(n)-\bold u^T(n)\hat{\bold w}(n)]w^(n+1)=w^(n)+μu(n)[d(n)uT(n)w^(n)]
  其中,步长参数μμμ是固定的。一个简单的想法是,在u(n)\bold u(n)u(n)增大时μ\bold μμ如果能相应减小,就可以在一定程度上减轻上述问题。
  基于此思想,便可得到归一化LMS的迭代公式,如下:
  w^(n+1)=w^(n)+μ~∣∣u(n)∣∣2u(n)[d(n)−uT(n)w^(n)]\hat{\bold w}(n+1)=\hat{\bold w}(n)+\frac {\widetilde μ}{||\bold u(n)||^2}\bold u(n)[\bold d(n)-\bold u^T(n)\hat{\bold w}(n)]w^(n+1)=w^(n)+u(n)2μu(n)[d(n)uT(n)w^(n)]
  上述迭代公式,本质上是在权值更新最小以及均方误差最小(二者以欧式范数为标准评价)的共同约束下,求解的结果。具体推导过程见参考文献[1]。

2.2 优点

  • 通过将u(n)\bold u(n)u(n)的模进行归一化,减轻了u(n)\bold u(n)u(n)增大时梯度噪声放大进而引起失调增大的问题。
  • 无论输入数据 是否相关,归一化LMS的收敛速度都可能比标准LMS滤波器快。

参考文献:

  1. 郑宝玉 等译,自适应滤波器原理,第四版,第5章
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值