【论文笔记之 UFLMS】Unconstrained Frequency-Domain Adaptive Filter
本文对 DAVID MANSOUR 等人于 1982 年在 IEEE Transactions on Acoustics, Speech, and Signal Processing 上发表的论文进行简单地翻译。如有表述不当之处欢迎批评指正。欢迎任何形式的转载,但请务必注明出处。
论文链接:https://ieeexplore.ieee.org/document/1163949。
目录
- 1. 论文目的
- 2. 摘要
- 3. 介绍
- 4. 频域自适应滤波器
-
- 4.1. 符号和定义
- 4.2.UFLMS 算法
- 5. 收敛到维纳解
- 6. 仿真结果
- 7. 结论
- 8. 附录
- 9. 后记
1. 论文目的
提出一种收敛于维纳解的频域自适应滤波算法,该算法在降低计算量的同时又对高度相关的输入信号具有快速收敛率。
2. 摘要
论文提出了一种无约束频域最小均方(UFLMS)算法。该算法基于频域滤波中所使用的 “overlap-save” 技术。所提出的算法收敛于维纳解,并且没有 Ferrara 提出的对冲激响应施加时域约束的操作。
对于大的抽头数量( ≥ 32 \geq32 ≥32),UFLMS 算法能显著降低计算量。另一个优势是对于高度相关的输入信号,它具有快速的收敛率。通过仿真验证了算法的性能。
3. 介绍
自适应滤波器是一种很有价值的信号处理工具,在干扰和回声消除、通道均衡、线性预测和谱估计中有着广泛的应用。在有限脉冲响应 FIR 的时域方法中,LMS,the gradient lattice 或最小二乘 lattice 等算法被用来估计自适应滤波器。上述提到的每个算法,输出一个采样点所需的乘法和加法次数均是随着滤波器的长度线性增长的。对于声学噪声抑制或声呐应用,所需的滤波器长度通常是上千点。为了处理这些应用,研究者们已经付出了巨大努力来开发有效的谱技术。
已有文献已经提出了很多技术。尽管这些技术在非常有限的应用中取得了良好的性能,但它们收敛到有偏的次优解。例如,Dentino 等人提出的频域方法,作为线路增强器取得了良好的性能。Waltzman 和 Schwartz 提出的频域方法,专为孤立的训练脉冲场景而设计,其用途非常有限。尽管频域的使用非常有吸引力(因为 FFT),使得先前的自适应滤波不能有效工作的关键困难在于,滤波器必须执行线性卷积,而 FFT 本质上适合于循环卷积。
最近,Ferrara 提出了一个更通用的,收敛到最优(维纳)解的频域自适应滤波器算法(FLMS)。FLMS 算法对于大的抽头数量是有效的,而且能被用于一般的自适应滤波应用中。然而,FLMS 算法最主要的缺点就是,对于高度相关的输入信号,它收敛得很慢,与时域 LMS 算法的情况相同。在每一轮迭代中,FLMS 算法需要 5 个 DFT。其中两个用于施加频域约束,该约束是将时域扩张的冲激响应的最后 N 个点置为 0(笔者注:之所以称之为时域扩张的冲激响应,是因为在算法具体实现过程中,在时域上给真实的冲激响应后面补了 N 个点)。
作者提出了一种新的频域自适应滤波算法,该算法收敛到维纳解,并且不需要任何约束。相比于 FLMS 算法(可参考 论文笔记之 FLMS),所提出的算法即具有快速收敛率,又能降低计算复杂度。对于协方差矩阵具有高度不同特征值的输入信号,具有收敛因子的无约束频域算法(通过每个频率的期望能量进行归一化)能更快得收敛。结果表明该算法能显著地节省计算量,并提高收敛率。
在接下来的内容中,作者首先提出了 UFLMS 算法;接着指出该算法收敛到时域维纳解;然后介绍了自适应的收敛因子,并在系统辨识的仿真实验中,比较了 UFLMS 算法和 LMS 算法的性能;最后,从所需乘法和加法的次数以及存储量大小两方面,讨论了算法的复杂度。
4. 频域自适应滤波器
为了简化频域算法的表示,先简要回顾 LMS 算法(图1)。
LMS 算法是时域的自适应滤波器。在每次迭代过程中,横向滤波器的权值 ω j \bm \omega_{j} ωj 根据下式更新:
ω j + 1 = ω j + 2 μ e j χ j (1)\bm \omega_{j+1} = \bm \omega_{j} + 2 \mu e_{j} \bm \chi_{j} \tag{1} ωj+1=ωj+2μejχj(1)
其中, χ j \bm \chi_{j} χj 是输入样本存储在自适应滤波器中的状态向量:
χ j T = ( χ j , χ j − 1 , ⋯ , χ j − N ) (2)\bm \chi_{j}^{T} = (\chi_{j}, \chi_{j-1}, \cdots, \chi_{j-N}) \tag{2} χjT=(χj,χj−1,⋯,χj−N)(2)
第 j j j 次迭代的误差是 e j e_{j} ej,定义为:
e j = d j − y j (3)e_{j} = d_{j} - y_{j} \tag{3} ej=dj−yj(3)
其中,
y j = χ j T ω j (4)y_{j} = \bm \chi_{j}^{T} \bm \omega_{j} \tag{4} yj=χjTωj(4)
d j d_{j} dj 是自适应滤波器的期望响应。
在时域自适应滤波器中, e j e_{j} ej 和 y j y_{j} yj 都是标量。在频域自适应滤波器中,滤波器的输出和误差信号都是向量。频域自适应滤波器需要新的输入输出定义。大写字母将代表频域变量,小写字母代表时域变量,黑体字母代表向量或矩阵。
UFLMS 算法基于快速卷积中所使用的众所周知的 overlap-save。为了阐明 UFLMS 算法推导过程中的输入/输出公式和符号,作者首先使用矩阵表示介绍了 overlap-save。
假设数字滤波器的阶数小于等于 N N N。定义 2 N 2N 2N 点的冲激响应向量 w \bm w w:
w ( i ) = w ( i ) i = 0 , 1 , ⋯ , N w ( i ) = 0 i = N + 1 , ⋯ , 2 N − 1 (5) \begin{aligned} & w(i) = w(i) \quad i = 0, 1, \cdots, N \\ & w(i) = 0 \quad \; \; \; \; \; i = N+1, \cdots, 2N-1 \end{aligned} \tag{5} w(i)=w(i)i=0,1,⋯,Nw(i)=0i=N+1,⋯,2N−1(5)
输入数据流 χ ( n ) \chi(n) χ(n) 按照以下方式,被分割成 2 N 2N 2N 点的向量,其中 N N N 个点是重叠的:
χ k ( n ) = χ k N + nn = 0 , 1 , ⋯ , 2 N − 1 k = 0 , 1 , 2 , ⋯ , ∞ (6) \chi_{k}(n) = \chi_{kN + n} \quad n = 0, 1, \cdots, 2N-1 \\ \qquad \qquad \qquad \; k = 0, 1, 2, \cdots, \infty \tag{6} χk(n)=χkN+nn=0,1,⋯,2N−1k=0,1,2,⋯,∞(6)
使用循环卷积的矩阵表示,并且为了简便忽略 k k k,输出向量 y k \bm {y}_{k} yk 为:
[ y 2 N − 1 y 2 N − 2 y 2 N − 3⋮ y 1y 0] = [ χ ( 0 ) χ ( 1 ) χ ( 2 ) ⋯ χ ( 2 N − 1 )χ ( 2 N − 1 ) χ ( 0 ) χ ( 1 ) ⋯ χ ( 2 N − 2 )χ ( 2 N − 2 ) ⋯ ⋯ ⋯ ⋯⋮⋮ χ ( 2 ) χ ( 3 ) ⋯ ⋯ χ ( 1 )χ ( 1 ) χ ( 2 ) ⋯ ⋯ χ ( 0 )] [ 000⋮ w 1w 0] (7) \begin{bmatrix} y_{2N-1} \\ y_{2N-2} \\ y_{2N-3} \\ \vdots \\ y_{1} \\ y_{0} \end{bmatrix} = \begin{bmatrix} \chi(0) & \chi(1) & \chi(2) & \cdots & \chi(2N-1) \\ \chi(2N-1) & \chi(0) & \chi(1) & \cdots & \chi(2N-2) \\ \chi(2N-2) & \cdots & \cdots & \cdots & \cdots \\ \vdots & & & & \vdots \\ \chi(2) & \chi(3) & \cdots & \cdots & \chi(1) \\ \chi(1) & \chi(2) & \cdots & \cdots & \chi(0) \end{bmatrix} \begin{bmatrix} 0 \\ 0 \\ 0 \\ \vdots \\ w_{1} \\ w_{0} \end{bmatrix} \tag{7} ⎣⎢⎢⎢⎢⎢⎢⎢⎡y2N−1y2N−2y2N−3⋮y1y0⎦⎥⎥⎥⎥⎥⎥⎥⎤=⎣⎢⎢⎢⎢⎢⎢⎢⎡χ(0)χ(2N−1)χ(2N−2)⋮χ(2)χ(1)χ(1)χ(0)⋯χ(3)χ(2)χ(2)χ(1)⋯⋯⋯⋯⋯⋯⋯⋯χ(2N−1)χ(2N−2)⋯⋮χ(1)χ(0)⎦⎥⎥⎥⎥⎥⎥⎥⎤⎣⎢⎢⎢⎢⎢⎢⎢⎡000⋮w1w0⎦⎥⎥⎥⎥⎥⎥⎥⎤(7)
可以看到,因为向量 w \bm w w 最前面的 N − 1 N-1 N−1 个点是零,输出向量 y k \bm{y}_{k} yk 中的最后 N N N 点是线性卷积的结果。在 overlap-save 方法中,矩阵操作使用 FFT 来完成,这能大大降低计算量。可以看到,在每次迭代 k k k 中,有 2 N 2N 2N 点的输入数据和 N N N 点的输出数据。正因如此,输入数据才会有 N N N 点的重叠。
接下来将讨论在推导 UFLMS 算法的过程中,所使用的不同的矩阵操作。
4.1. 符号和定义
令 F \bm F F 表示 2 N × 2 N 2N \times 2N 2N×2N 的对称矩阵,其元素为 Fkj = exp ( − i ( 2 π / 2 N ) k j ) , k , j = 0 , 1 , ⋯ , 2 N − 1 F_{kj} = \text{exp} (-i(2\pi / 2N)kj), \; k, j = 0, 1, \cdots, 2N-1 Fkj=exp(−i(2π/2N)kj),k,j=0,1,⋯,2N−1,其中 i i i 是 − 1 -1 −1 的平方根。当使用 F \bm F F 对 2 N 2N 2N 阶的列向量进行运算时,其结果是一个列向量,表示原始向量的 DFT变换。
令 F−1 \bm F^{-1} F−1 表示 F \bm F F 的逆矩阵,它也是 2 N × 2 N 2N \times 2N 2N×2N 的对称矩阵,其元素为 Fkj −1 = 1 / 2 N exp ( i ( 2 π / 2 N ) k j ) F_{kj}^{-1} = 1/2N \; \text{exp} (i(2\pi/2N)kj) Fkj−1=1/2Nexp(i(2π/2N)kj)。 F \bm F F 和 F−1 \bm F^{-1} F−1 满足以下关系: F † = 2 N F−1 , ( F−1 ) † = ( 1 / 2 N ) F \bm F^{\dag} = 2N \bm F^{-1}, \; (\bm F^{-1})^{\dag} = (1/2N) \bm F F†=2NF−1,(F−1)†=(1/2N)F,其中 † \dag † 代表复数共轭转置。
令 χ k \bm{\chi}_{k} χk 表示第 k k k 次迭代中, ( 6 ) (6) (6) 和 ( 7 ) (7) (7) 所定义的循环矩阵。现定义:
Xk = Fχk F − 1\bm{X}_{k} = \bm F \bm{\chi}_{k} \bm F^{-1} Xk=FχkF−1
因为 χ k \bm{\chi}_{k} χk 是一个循环矩阵,所以 X k \bm{X}_{k} Xk 是一个对角阵,其元素为循环矩阵 χ k \bm{\chi}_{k} χk 第一行元素的 DFT 变换。进一步可得到: X k † = F χ k † F−1 \bm{X}_{k}^{\dag} = \bm F \bm{\chi}_{k}^{\dag} \bm F^{-1} Xk†=Fχk†F−1
令 h \bm h h 表示 2 N × 2 N 2N \times 2N 2N×2N 的窗口矩阵,其右下角的 N × N N \times N N×N 个元素为单位矩阵:
h =[ 0 0 0 I ] \bm h = \begin{bmatrix} \bm 0 & \bm 0 \\ \bm 0 & \bm I \end{bmatrix} h=[000I]
满足 h h = h \bm h \bm h = \bm h hh=h。定义: H △ F h F−1 \bm H \; \bm \triangle \; \bm F \bm h \bm F^{-1} H△FhF−1,因为 h \bm h h 是对角阵,所以 H \bm H H 是循环矩阵,其第一行元素是向量 ( 0 ⋯ 0 1 1 ⋯ 1 ) (0 \cdots 0 \; 1 \; 1 \cdots 1) (0⋯011⋯1) 的 IDFT 变换。 H \bm H H 满足以下等式:
H H = F h F − 1 F h F − 1 = F h F − 1 = H (8) \bm H \bm H = \bm F \bm h \bm F^{-1} \bm F \bm h \bm F^{-1} = \bm F \bm h \bm F^{-1} = \bm H \tag{8} HH=FhF−1FhF−1=FhF−1=H(8)
H † = ( F − 1 ) † h † F † = F h F − 1 = H (9) \bm H^{\dag} = (\bm F^{-1})^{\dag} \bm h^{\dag} \bm F^{\dag} = \bm F \bm h \bm F^{-1} = \bm H \tag{9} H†=(F−1)†h†F†=FhF−1=H(9)
令 μ \bm \mu μ 表示 2 N × 2 N 2N \times 2N 2N×2N 的实对角正定矩阵,其对角线上的元素表示 UFLMS 算法中每个频点的收敛常数,稍后将作介绍。
令 d k , ω k , e k , y k \bm d_{k},\bm \omega_{k},\bm e_{k},\bm y_{k} dk,ωk,ek,yk 均为 2 N 2N 2N 点的向量,分别表示时域的期望响应,冲激响应,误差向量和输出向量。 D k , W k , E k , Y k \bm D_{k},\bm W_{k},\bm E_{k},\bm Y_{k} Dk,Wk,Ek,Yk 分别表示 d k , ω k , e k , y k \bm d_{k},\bm \omega_{k},\bm e_{k},\bm y_{k} dk,ωk,ek,yk 2 N 2N 2N 点的 DFT 变换。
4.2.UFLMS 算法
使用上述的定义和图2 中的框图,可以给出无约束的频域自适应滤波器。其配置基于 “overlap-save” 技术。在第 k k k 次迭代中,将对角阵 X k \bm X_{k} Xk(由 2 N 2N 2N 点的输入向量的 DFT 变换推导出)与 W k \bm W_{k} Wk(冲激响应的 DFT 变换)相乘,生成输出 Y k \bm Y_{k} Yk:
Y k = X k W k (10) \bm Y_{k} = \bm X_{k} \bm W_{k} \tag{10} Yk=XkWk(10)
时域的输出是:
y k = F − 1 X k W k (11)\bm y_{k} = \bm F^{-1} \bm X_{k} \bm W_{k} \tag{11} yk=F−1XkWk(11)
加窗之前的时域误差信号是:
e k ′ = d k − y k (12)\bm e_{k}^{'} = \bm d_{k} - \bm y_{k} \tag{12} ek′=dk−yk(12)
根据 “overlap-save” 方法,当滤波器长度为 N N N 时, y k \bm y_{k} yk 中只有最后 N N N 个点是线性卷积的结果。给上述误差信号加窗 h \bm h h 可得:
e k = h ( d k − y k ) = h ( d k − F − 1 X k W k ) (13)\bm e_{k} = \bm h (\bm d_{k} - \bm y_{k}) = \bm h (\bm d_{k} - \bm F^{-1} \bm X_{k} \bm W_{k}) \tag{13} ek=h(dk−yk)=h(dk−F−1XkWk)(13)
因为初衷是在频域对系数进行自适应,所以,给 ( 13 ) (13) (13) 的两边乘以 F \bm F F 以进行 DFT 变换:
E k = Fek = F h (dk −F − 1 Xk Wk ) E k = F hF − 1 ( Fdk − FF − 1 Xk Wk ) E k = H (Dk −Xk Wk ) (14) \begin{aligned} \bm E_{k} &= \bm F \bm e_{k} = \bm F \bm h (\bm d_{k} - \bm F^{-1} \bm X_{k} \bm W_{k}) \\ \bm E_{k} &= \bm F \bm h \bm F^{-1} (\bm F \bm d_{k} - \bm F \bm F^{-1} \bm X_{k} \bm W_{k}) \\ \bm E_{k} &= \bm H (\bm D_{k} - \bm X_{k} \bm W_{k}) \end{aligned} \tag{14} EkEkEk=Fek=Fh(dk−F−1XkWk)=FhF−1(Fdk−FF−1XkWk)=H(Dk−XkWk)(14)
为了推导自适应算法,可以遵循推导 LMS 算法时的相同步骤。假定输入信号是平稳的,并且待辨识系统是时不变的。可以证明平方误差的期望值 ϵ { ∣ E k ∣ 2 } \epsilon \{|E_{k}|^{2}\} ϵ{∣Ek∣2} 是 W k \bm W_{k} Wk 的二次方。通过使用梯度法,算法将收敛到某个达到最小均方误差的 w o \bm w^{o} wo。每次迭代的均方误差是:
∣ E k ∣ 2 = E k † E k = ( D k † − W k † X k † ) H † H ( D k − X k W k ) (15) |E_{k}|^{2} = \bm E_{k}^{\dag} \bm E_{k} = (\bm D_{k}^{\dag} - \bm W_{k}^{\dag} \bm X_{k}^{\dag}) \bm H^{\dag} \bm H (\bm D_{k} - \bm X_{k} \bm W_{k}) \tag{15} ∣Ek∣2=Ek†Ek=(Dk†−Wk†Xk†)H†H(Dk−XkWk)(15)
由于 H \bm H H 是对称且幂等的(见 ( 8 ) , ( 9 ) (8),(9) (8),(9)):
∣ E k ∣ 2 = ( D k † − W k † X k † ) H ( D k − X k W k ) (16) |E_{k}|^{2} = (\bm D_{k}^{\dag} - \bm W_{k}^{\dag} \bm X_{k}^{\dag}) \bm H (\bm D_{k} - \bm X_{k} \bm W_{k}) \tag{16} ∣Ek∣2=(Dk†−Wk†Xk†)H(Dk−XkWk)(16)
暂时假设权值向量 W k \bm W_{k} Wk 独立于 X k \bm X_{k} Xk,该假设只用于推动算法的设计,并不用于后续的收敛性证明。平方误差的期望值将是:
ϵ { ∣Ek ∣2 } = ϵ {Dk† HDk } − 2 ϵ {Dk† HXk }Wk +Wk† ϵ {Xk† HXk }Wk (17) \begin{aligned} \epsilon \{|E_{k}|^{2}\} &= \epsilon \{\bm D_{k}^{\dag} \bm H \bm D_{k}\} - 2 \epsilon \{\bm D_{k}^{\dag} \bm H \bm X_{k}\} \bm W_{k} \\ &+ \bm W_{k}^{\dag} \epsilon \{\bm X_{k}^{\dag} \bm H \bm X_{k}\} \bm W_{k} \end{aligned} \tag{17} ϵ{∣Ek∣2}=ϵ{Dk†HDk}−2ϵ{Dk†HXk}Wk+Wk†ϵ{Xk†HXk}Wk(17)
其中, ϵ \epsilon ϵ 表示取期望。 ( 17 ) (17) (17) 是 W k \bm W_{k} Wk 的二次方,令该式对 W k \bm W_{k} Wk 的梯度为零,可得到最优值 W o \bm W^{o} Wo:
▽ W k † △ − 2 ϵ { D k † H X k } + 2 W k † ϵ { X k † H X k } = 0 (18)\bm \bigtriangledown \bm W_{k}^{\dag} \; \bm \triangle \; -2 \epsilon \{\bm D_{k}^{\dag} \bm H \bm X_{k}\} + 2 \bm W_{k}^{\dag} \epsilon \{\bm X_{k}^{\dag} \bm H \bm X_{k}\} = 0 \tag{18} ▽Wk†△−2ϵ{Dk†HXk}+2Wk†ϵ{Xk†HXk}=0(18)
UFLMS 算法使用梯度法来求解 ( 18 ) (18) (18)。根据这个方法,下一次的权值向量 Wk+1 \bm W_{k+1} Wk+1 等于 W k \bm W_{k} Wk 加上一个与负梯度成比例的增量:
W k + 1 = W k − μ ▽ W k (19)\bm W_{k+1} = \bm W_{k} - \bm \mu \bm \bigtriangledown \bm W_{k} \tag{19} Wk+1=Wk−μ▽Wk(19)
在 UFLMS 算法中,第 k k k 次迭代使用瞬时值估计梯度向量。就像 LMS 算法一样,用瞬时梯度来估计真实梯度。从 ( 18 ) (18) (18) 中可以得出,控制滤波器权值的方程为:
W k + 1 = W k + 2 μ X k † ( H D k − H X k W k ) (20)\bm W_{k+1} = \bm W_{k} + 2 \bm \mu \bm X_{k}^{\dag} (\bm H \bm D_{k} - \bm H \bm X_{k} \bm W_{k}) \tag{20} Wk+1=Wk+2μXk†(HDk−HXkWk)(20)
或
W k + 1 = W k + 2 μ X k † E k (21)\bm W_{k+1} = \bm W_{k} + 2 \bm \mu \bm X_{k}^{\dag} \bm E_{k} \tag{21} Wk+1=Wk+2μXk†Ek(21)
其中,对角阵 μ \bm \mu μ 是收敛常量。将会看到,不同的频点可选用不同的收敛常量。
这一小节,作者以一种简单的方式介绍了算法。截止到目前为止,最主要的问题是:在什么情况下, ( 18 ) (18) (18) 有唯一解;并且该唯一解在什么时候是最优解(维纳解)?瞬时梯度算法需要什么样的条件, ( 21 ) (21) (21) 才能收敛到唯一解?这些问题将是下一小节的主题。
5. 收敛到维纳解
在本节,作者证明了在以下条件满足的情况下,UFLMS 算法收敛到维纳解:
1) 自适应滤波器的输入信号是各态历经的,平稳的,有界的;
2) 输入信号协方差矩阵( N + 1 N+1 N+1 阶或更高阶)的秩至少为 N + 1 N+1 N+1;
3) 待辨识系统是时不变的;
4) 待辨识系统的阶数小于等于 N N N。
假设期望响应信号是输入信号和冲激响应 W ′ \bm W^{'} W′ 的线性卷积再加上噪声信号的结果,该噪声信号和输入信号不相关。 W ′ \bm W^{'} W′ 是待辨识系统,假设它是时不变的,而且阶数小于等于 N + 1 N+1 N+1。
前三个条件与证明 LMS 算法的收敛性时所使用的条件是一样的。条件四是在本小节的证明过程中唯一需要增加的。在大多数实际应用中,该条件均能被满足。
收敛性的证明过程可以被划分为三个步骤。首先,作者证明了对于满足条件 2)的平稳信号来说, ( 18 ) (18) (18) 有唯一解;然后,作者证明了在满足条件 4)的情况下,该唯一解是维纳解;最后,作者证明了在四个条件都满足的情况下,上一节提出的瞬时梯度算法收敛到维纳解。
因为条件 2)是在时域,所以,为了证明 ( 18 ) (18) (18) 有唯一解,先通过 F−1 \bm F^{-1} F−1 将 ( 18 ) (18) (18) 转换到时域:
F − 1 [ ϵ { X k † H X k } W k − ϵ { X k † H D k } ] = 0 (22)\bm F^{-1} [\epsilon \{\bm X_{k}^{\dag} \bm H \bm X_{k}\}\bm W_{k} - \epsilon \{\bm X_{k}^{\dag} \bm H \bm D_{k}\}] = 0 \tag{22} F−1[ϵ{Xk†HXk}Wk−ϵ{Xk†HDk}]=0(22)
用时域的表示替换频域的矩阵和向量, ( 22 ) (22) (22) 可改写为:
ϵ { F − 1 F χ k † F − 1 F h F − 1 F d k } = ϵ { F − 1 F χ k † F − 1 F h F − 1 F χ k F − 1 } F ω k (23)\epsilon \{\bm F^{-1} \bm F \bm \chi_{k}^{\dag} \bm F^{-1} \bm F \bm h \bm F^{-1} \bm F \bm d_{k}\} = \epsilon \{\bm F^{-1} \bm F \bm \chi_{k}^{\dag} \bm F^{-1} \bm F \bm h \bm F^{-1} \bm F \bm \chi_{k} \bm F^{-1}\} \bm F \bm \omega_{k} \tag{23} ϵ{F−1Fχk†F−1FhF−1Fdk}=ϵ{F−1Fχk†F−1FhF−1FχkF−1}Fωk(23)
因为 F F−1 = I \bm F \bm F^{-1} = \bm I FF−1=I,所以:
ϵ { χ k † h d k } = ϵ { χ k † h χ k } ω k (24)\epsilon \{ \bm \chi_{k}^{\dag} \bm h \bm d_{k}\} = \epsilon \{\bm \chi_{k}^{\dag} \bm h \bm \chi_{k}\} \bm \omega_{k} \tag{24} ϵ{χk†hdk}=ϵ{χk†hχk}ωk(24)
定义:
p = ϵ { χ k † h d k } (25)\bm p = \epsilon \{ \bm \chi_{k}^{\dag} \bm h \bm d_{k}\} \tag{25} p=ϵ{χk†hdk}(25)
r = ϵ { χ k h χ k } (26)\bm r = \epsilon \{\bm \chi_{k} \bm h \bm \chi_{k}\} \tag{26} r=ϵ{χkhχk}(26)
( 24 ) (24) (24) 可被重写为以下矩阵形式:
r ω k = p (27)\bm r \bm \omega_{k} = \bm p \tag{27} rωk=p(27)
如果矩阵 r \bm r r 是非奇异的,那么 ( 27 ) (27) (27) 就有唯一解。附录中,作者证明了如果输入信号的协方差矩阵的秩大于等于 N + 1 N+1 N+1,那么矩阵 r \bm r r 的秩就是 2 N 2N 2N。(前提是输入信号如果是周期性的,那么其周期正好不为 2 N 2N 2N)
第一个结论是:在平稳性以及条件 2)满足的情况下, ( 24 ) (24) (24) 有唯一解。
第二步是在条件 4)满足的情况下,证明该唯一解是最优解(维纳解)。为了证明该结论,需要更加明确地表示出期望响应向量 d k \bm d_{k} dk。使用 “overlap-save” 技术和条件 4), d k \bm d_{k} dk 能被写成以下形式
h d k = h ( χ k ω ′ + n k ) (28)\bm h \bm d_{k} = \bm h (\bm \chi_{k} \bm \omega^{'} + \bm n_{k}) \tag{28} hdk=h(χkω′+nk)(28)
其中, ω ′ \bm \omega^{'} ω′ 是在待辨识系统的真实冲激响应上,补了 N − 1 N - 1 N−1 点零的结果。因为滤波器的阶数小于等于 N N N, n k \bm n_{k} nk 是和 χ k \bm \chi_{k} χk 不相关的加性噪声。从 “overlap-save” 技术可知,只有 χ k ω ′ \bm \chi_{k} \bm \omega^{'} χkω′ 的最后 N N N 个元素是线性卷积的结果。正因如此,公式两边均乘以 h \bm h h,并且对于 h \bm h h, ( 28 ) (28) (28) 成立。将 ( 28 ) (28) (28) 代入 ( 24 ) (24) (24),可得:
ϵ { χ k † h ( χ k ω ′ + n k ) } = ϵ { χ k † h χ k } ω k (29)\epsilon \{ \bm \chi_{k}^{\dag} \bm h (\bm \chi_{k} \bm \omega^{'} + \bm n_{k})\} = \epsilon \{\bm \chi_{k}^{\dag} \bm h \bm \chi_{k}\} \bm \omega_{k} \tag{29} ϵ{χk†h(χkω′+nk)}=ϵ{χk†hχk}ωk(29)
因为 n k \bm n_{k} nk 独立于 χ k \bm \chi_{k} χk,可得:
ϵ { χ k † h χ k } ω ′ = ϵ { χ k † h χ k } ω k (30)\epsilon \{ \bm \chi_{k}^{\dag} \bm h \bm \chi_{k}\} \bm \omega^{'} = \epsilon \{\bm \chi_{k}^{\dag} \bm h \bm \chi_{k}\} \bm \omega_{k} \tag{30} ϵ{χk†hχk}ω′=ϵ{χk†hχk}ωk(30)
可以看出, ( 24 ) (24) (24) 的解是 ω k = ω ′ \bm \omega_{k} = \bm \omega^{'} ωk=ω′,是最优解,前提是 r \bm r r 是非奇异的。
第二个结论是:当输入信号是平稳的,以及条件 2)~4) 均满足的时候, ( 24 ) (24) (24) 的解是最优维纳解。
最后一步是证明,在条件1)~3)均满足的情况下,瞬时梯度算法收敛到唯一解,从第二步可以看出,在条件 4)满足的情况下,该唯一解是维纳解。
从 ( 20 ) (20) (20) 可得:
W k + 1 = W k + 2 μ X k † H ( D k − X k W k ) (31)\bm W_{k+1} = \bm W_{k} + 2 \bm \mu \bm X_{k}^{\dag} \bm H (\bm D_{k} - \bm X_{k} \bm W_{k}) \tag{31} Wk+1=Wk+2μXk†H(Dk−XkWk)(31)
因为 H H = H \bm H \bm H = \bm H HH=H, ( 31 ) (31) (31) 可被重写为:
W k + 1 = W k + 2 μ X k † H ( H D k − X k W k ) (32)\bm W_{k+1} = \bm W_{k} + 2 \bm \mu \bm X_{k}^{\dag} \bm H (\bm H \bm D_{k} - \bm X_{k} \bm W_{k}) \tag{32} Wk+1=Wk+2μXk†H(HDk−XkWk)(32)
给 ( 28 ) (28) (28) 乘以 F \bm F F,可得:
H D k = H ( X k W ′ + F n k ) (33)\bm H \bm D_{k} = \bm H (\bm X_{k} \bm W^{'} + \bm F \bm n_{k}) \tag{33} HDk=H(XkW′+Fnk)(33)
其中, W ′ \bm W^{'} W′ 是 w ′ \bm w^{'} w′(待辨识系统的冲激响应)的 DFT 变换。将 ( 33 ) (33) (33) 代入 ( 32 ) (32) (32),可得:
W k + 1 = W k + 2 μ X k † H ( X k W ′ + F n k − X k W k ) (34)\bm W_{k+1} = \bm W_{k} + 2 \bm \mu \bm X_{k}^{\dag} \bm H (\bm X_{k} \bm W^{'} + \bm F \bm n_{k} - \bm X_{k} \bm W_{k}) \tag{34} Wk+1=Wk+2μXk†H(XkW′+Fnk−XkWk)(34)
令 Vk+1 = W ′ − Wk+1 \bm V_{k+1} = \bm W^{'} - \bm W_{k+1} Vk+1=W′−Wk+1,可得:
V k + 1 = ( I − 2 μ X k † H X k ) V k − 2 μ X k † H F n k (35)\bm V_{k+1} = (\bm I - 2 \bm \mu \bm X_{k}^{\dag} \bm H \bm X_{k}) \bm V_{k} - 2 \bm \mu \bm X_{k}^{\dag} \bm H \bm F \bm n_{k} \tag{35} Vk+1=(I−2μXk†HXk)Vk−2μXk†HFnk(35)
给 ( 35 ) (35) (35) 乘以 μ−1/2 \bm \mu^{-1/2} μ−1/2,可得:
μ − 1 / 2 V k + 1 = μ − 1 / 2 ( I − 2 μ X k † H X k ) μ 1 / 2 μ − 1 / 2 V k − 2 μ + 1 / 2 X k † H F n k (36)\bm \mu^{-1/2} \bm V_{k+1} = \bm \mu^{-1/2} (\bm I - 2 \bm \mu \bm X_{k}^{\dag} \bm H \bm X_{k}) \bm \mu^{1/2} \bm \mu^{-1/2} \bm V_{k} - 2 \bm \mu^{+1/2} \bm X_{k}^{\dag} \bm H \bm F \bm n_{k} \tag{36} μ−1/2Vk+1=μ−1/2(I−2μXk†HXk)μ1/2μ−1/2Vk−2μ+1/2Xk†HFnk(36)
使用以下定义:
U k = μ − 1 / 2 V k (37)\bm U_{k} = \bm \mu^{-1/2} \bm V_{k} \tag{37} Uk=μ−1/2Vk(37)
G k = μ − 1 / 2 ( I − 2 μ X k † H X k ) μ 1 / 2 (38)\bm G_{k} = \bm \mu^{-1/2} (\bm I - 2 \bm \mu \bm X_{k}^{\dag} \bm H \bm X_{k}) \bm \mu^{1/2} \tag{38} Gk=μ−1/2(I−2μXk†HXk)μ1/2(38)
( 36 ) (36) (36) 等于:
U k + 1 = G k U k − 2 μ 1 / 2 X k H F n k (39)\bm U_{k+1} = \bm G_{k} \bm U_{k} - 2 \bm \mu^{1/2} \bm X_{k} \bm H \bm F \bm n_{k} \tag{39} Uk+1=GkUk−2μ1/2XkHFnk(39)
(笔者注: ( 39 ) (39) (39) 应该是 Uk+1 = G k U k − 2 μ1/2 X k † H F n k \bm U_{k+1} = \bm G_{k} \bm U_{k} - 2 \bm \mu^{1/2} \bm X_{k}^{\dag} \bm H \bm F \bm n_{k} Uk+1=GkUk−2μ1/2Xk†HFnk)
检验 ( 39 ) (39) (39) 的稳定性和检验 ( 35 ) (35) (35) 的稳定性是一样的。如果能证明,随着 k → ∞ k \rightarrow \infty k→∞, U k → 0 \bm U_{k} \rightarrow 0 Uk→0,那么说明 V k → 0 \bm V_{k} \rightarrow 0 Vk→0,因为 μ \bm \mu μ 是正定的。
( 39 ) (39) (39) 是具有随机系数的差分方程。Bitmead 和 Anderson 对这类方程的几乎确定的渐近指数稳定性 (a.s. AES) 进行了研究。LMS 算法的 a.s. AES 在之前的文献中已经通过使用 Lyapunov stability 技术给出。在条件 1)~3)满足的情况下,LMS 算法是 a.s. AES 的。通过遵循相同的定理和条件,作者将证明 UFLMS 算法是 a.s. AES 的。
在证明的过程中,作者将仅考虑齐次方程的 a.s. AES,因为非齐次部分表现为指数稳定差分方程的加性驱动项。证明过程将会使用到很多之前文献中出现的定理。为了清晰起见,先回顾下会用到的定理论:
定理1 指数稳定的random Lyapunov theorem:考虑具有随机系数的离散时间自由动态系统,
U k + 1 = G k U k (40)\bm U_{k+1} = \bm G_{k} \bm U_{k} \tag{40} Uk+1=GkUk(40)
假设存在一个对称正定矩阵函数 P k \bm P_{k} Pk,正的常量 a , b a,b a,b,使得对所有 k k k:
0 < a I ≤ P k ≤ b I < ∞ a . s . (I)0 < a \bm I \leq \bm P_{k} \leq b\bm I < \infty \quad a.s. \tag{I} 0<aI≤Pk≤bI<∞a.s.(I)
因此,对于某些矩阵 A k \bm A_{k} Ak:
G k † P k + 1 G k − P k = − A k A k † (II)\bm G_{k}^{\dag} \bm P_{k+1} \bm G_{k} - \bm P_{k} = -\bm A_{k} \bm A_{k}^{\dag} \tag{II} Gk†Pk+1Gk−Pk=−AkAk†(II)
定义:
C ( k n ) =∑ i = 0n − 1 Φ† ( k n + i , k n )A k n + i A k n + i † Φ ( k n + i , k n ) \bm C(kn) = \sum_{i=0}^{n-1} \Phi^{\dag} (kn+i,kn) \bm A_{kn+i} \bm A_{kn+i}^{\dag} \Phi (kn+i,kn) C(kn)=i=0∑n−1Φ†(kn+i,kn)Akn+iAkn+i†Φ(kn+i,kn)
Φ ( ⋅ , ⋅ ) \Phi (\cdot, \cdot) Φ(⋅,⋅) 是 ( 40 ) (40) (40) 的转移矩阵,并定义 λ k \lambda_{k} λk 为 C ( k n ) \bm C(kn) C(kn) 除以 (I) 中的 b b b 所得结果的最小特征值;可得 0 ≤ λ k ≤ 1 0 \leq \lambda_{k} \leq 1 0≤λk≤1。接着,如果存在一个常量 v > 0 v>0 v>0,使得几乎可以确定:
m v + ∑ i = 0 m − 1 log [ 1 − λ k + 1 ] → ∞ as m → ∞ (III)mv + \sum_{i=0}^{m-1} \text{log} [1 - \lambda_{k+1}] \rightarrow \infty \quad \text{as} \quad m \rightarrow \infty \tag{III} mv+i=0∑m−1log[1−λk+1]→∞asm→∞(III)
这个动态系统几乎肯定是指数渐近稳定的。
在上述定理的条件 (I) 中,使用简写符号:
0 < a I < P k ≤ b I for 0 < U † ( a I ) U < U † P k U ≤ U † ( b I ) Ufor all U ≠ 0 \begin{aligned} &0 < a \bm I < \bm P_{k} \leq b \bm I \qquad \qquad \qquad \qquad \; \; \; \; \text{for} \\ &0 < \bm U^{\dag} (a \bm I) \bm U < \bm U^{\dag} \bm P_{k} \bm U \leq \bm U^{\dag} (b \bm I) \bm U \quad \text{for all} \; \bm U \neq 0 \end{aligned} 0<aI<Pk≤bIfor0<U†(aI)U<U†PkU≤U†(bI)Ufor allU=0
作者提出以下候选 Lyapunov 函数:
L ( U , k ) = U † U = L ( U ) (41)L(\bm U, k) = \bm U^{\dag} \bm U = L(\bm U) \tag{41} L(U,k)=U†U=L(U)(41)
对于所有的 k k k, P k = I \bm P_{k} = I Pk=I 满足该定理的条件 (I)。条件 (II) 变成:
G k † G k − I = − A k A k † (42)\bm G_{k}^{\dag} \bm G_{k} - \bm I = - \bm A_{k} \bm A_{k}^{\dag} \tag{42} Gk†Gk−I=−AkAk†(42)
使用 ( 38 ) (38) (38) 替换 G k \bm G_{k} Gk,可得:
μ 1 / 2 ( I − 2 X k † H X k μ ) μ − 1 / 2 μ − 1 / 2 ( I − 2 μ X k † H X k ) μ 1 / 2 − I = − A k A k † (43)\bm \mu^{1/2} (\bm I - 2 \bm X_{k}^{\dag} \bm H \bm X_{k} \bm \mu) \bm \mu^{-1/2} \bm \mu^{-1/2} (\bm I - 2 \bm \mu \bm X_{k}^{\dag} \bm H \bm X_{k}) \bm \mu^{1/2} - \bm I = -\bm A_{k} \bm A_{k}^{\dag} \tag{43} μ1/2(I−2Xk†HXkμ)μ−1/2μ−1/2(I−2μXk†HXk)μ1/2−I=−AkAk†(43)
或
( I − 2 μ 1 / 2 X k † H X k μ 1 / 2 ) ( I − 2 μ 1 / 2 X k † H X k μ 1 / 2 ) − I = − A k A k † (44)(\bm I - 2 \bm \mu^{1/2} \bm X_{k}^{\dag} \bm H \bm X_{k} \bm \mu^{1/2}) (\bm I - 2 \bm \mu^{1/2} \bm X_{k}^{\dag} \bm H \bm X_{k}\bm \mu^{1/2}) - \bm I = -\bm A_{k} \bm A_{k}^{\dag} \tag{44} (I−2μ1/2Xk†HXkμ1/2)(I−2μ1/2Xk†HXkμ1/2)−I=−AkAk†(44)
因为 H H = H \bm H \bm H = \bm H HH=H,所以:
− 4 μ 1 / 2 X k † H ( I − X k μ X k † ) H X k μ 1 / 2 = − A k A k † (45)-4\bm \mu^{1/2} \bm X_{k}^{\dag} \bm H (\bm I - \bm X_{k} \bm \mu \bm X_{k}^{\dag}) \bm H \bm X_{k} \bm \mu^{1/2} = -\bm A_{k} \bm A_{k}^{\dag} \tag{45} −4μ1/2Xk†H(I−XkμXk†)HXkμ1/2=−AkAk†(45)
为了满足该定理的条件 (II),必须找到满足 ( 45 ) (45) (45) 的 A k \bm A_{k} Ak。对于这样的 A k \bm A_{k} Ak, ( I − X k μ X k † ) (\bm I - \bm X_{k} \bm \mu \bm X_{k}^{\dag}) (I−XkμXk†) 对所有的 k k k 必须是正定的。因为 X k \bm X_{k} Xk 和 μ \bm \mu μ 都是对角阵,为了让 ( I − X k μ X k † ) (\bm I - \bm X_{k} \bm \mu \bm X_{k}^{\dag}) (I−XkμXk†) 是正定的,对于所有的 k k k 和频点 i i i, μii ≤ 1 / X k ( i i ) X k ∗ ( i i ) \mu_{ii} \leq 1 / X_{k}(ii) X_{k}^{*}(ii) μii≤1/Xk(ii)Xk∗(ii)。
通过定义 M i M_{i} Mi(∣X(i)∣ 2 \left|X(i)\right|^{2} ∣X(i)∣2 的上界),并对于所有的 i i i,使得 μii ∈ ( 0 , 1 / M i ) \mu_{ii} \in (0, 1/M_{i}) μii∈(0,1/Mi),则可以令该定理的条件 (II) 得到满足。因为已经假定输入信号是有界的,因此 M i M_{i} Mi 是存在的。通过定义对角阵 M \bm M M,并令其对角元素为 M i M_{i} Mi,则可以得到以下不等式:
( I − μ M ) < ( I − X k μ X k ) for all k (46)(\bm I - \bm \mu \bm M) < (\bm I - \bm X_{k} \bm \mu \bm X_{k}) \quad \text{for all} \; k\tag{46} (I−μM)<(I−XkμXk)for allk(46)
(笔者注: ( 46 ) (46) (46) 应该是 ( I − μ M ) < ( I − X k μ X k † ) for all k (\bm I - \bm \mu \bm M) < (\bm I - \bm X_{k} \bm \mu \bm X_{k}^{\dag}) \quad \text{for all} \; k (I−μM)<(I−XkμXk†)for allk)。
给上述不等式左右两边同时乘以 2 μ1/2 X k † H 2 \bm \mu^{1/2} \bm X_{k}^{\dag} \bm H 2μ1/2Xk†H,可得:
− 4 μ 1 / 2 X k † H ( I − μ M ) H X k μ 1 / 2≥ − 4 μ 1 / 2 X k † H ( I − X k μ X k † ) H X k μ 1 / 2 (47)-4 \bm \mu^{1/2} \bm X_{k}^{\dag} \bm H (\bm I - \bm \mu \bm M) \bm H \bm X_{k} \bm \mu^{1/2} \\ \geq -4 \bm \mu^{1/2} \bm X_{k}^{\dag} \bm H (\bm I - \bm X_{k} \bm \mu \bm X_{k}^{\dag}) \bm H \bm X_{k} \bm \mu^{1/2} \tag{47} −4μ1/2Xk†H(I−μM)HXkμ1/2≥−4μ1/2Xk†H(I−XkμXk†)HXkμ1/2(47)
或
A k A k † ≥ 4 μ 1 / 2 X k † H ( I − μ M ) H X k μ 1 / 2 (48)\bm A_{k} \bm A_{k}^{\dag} \geq 4 \bm \mu^{1/2} \bm X_{k}^{\dag} \bm H (\bm I - \bm \mu \bm M) \bm H \bm X_{k} \bm \mu^{1/2} \tag{48} AkAk†≥4μ1/2Xk†H(I−μM)HXkμ1/2(48)
为了满足该定理的条件 (III),必须证明对于某些 n n n, C ( k n ) \bm C(kn) C(kn) 的最小特征值必须大于零。This condition is equivalent to the condition that for certain n n n, the pair [Gk ,Ak ] [\bm G_{k}, \bm A_{k}] [Gk,Ak] are observable. From ( 48 ) (48) (48), the observability of the pair [Gk ,Ak ] [\bm G_{k}, \bm A_{k}] [Gk,Ak] is implied by the observability of the pair [Gk ,μ 1 / 2 Xk H ] [\bm G_{k}, \bm \mu^{1/2} \bm X_{k} \bm H] [Gk,μ1/2XkH].
Since this observability is difficult to evaluate, we use the invariance of observability under bounded output feedback theorem. We may choose a bounded feedback matrix Kk = 2μ 1 / 2 Xk† H \bm K_{k} = 2\bm \mu^{1/2} \bm X_{k}^{\dag} \bm H Kk=2μ1/2Xk†H and study the observability of [Gk +Kk HXk† μ 1 / 2 ,μ 1 / 2 Xk H ] = [ I ,μ 1 / 2 Xk H ] [\bm G_{k} + \bm K_{k} \bm H \bm X_{k}^{\dag} \bm \mu^{1/2}, \bm \mu^{1/2} \bm X_{k} \bm H] = [\bm I, \bm \mu^{1/2} \bm X_{k} \bm H] [Gk+KkHXk†μ1/2,μ1/2XkH]=[I,μ1/2XkH]. Now, the observability Grammian of the pair [ I ,μ 1 / 2 Xk H ] [\bm I, \bm \mu^{1/2} \bm X_{k} \bm H] [I,μ1/2XkH] is
C ‾ n ( k n ) = ∑ i = 0 n − 1 μ 1 / 2 X k n + i † H H X k n + i μ 1 / 2 (49)\overline \bm C_{n}(kn) = \sum_{i=0}^{n-1} \bm \mu^{1/2} \bm X_{kn+i}^{\dag} \bm H \bm H \bm X_{kn+i} \bm \mu^{1/2} \tag{49} Cn(kn)=i=0∑n−1μ1/2Xkn+i†HHXkn+iμ1/2(49)
C ‾ n ( k n ) = μ 1 / 2 ( ∑ i = 0 n − 1 X k n + i † H X k n + i ) μ 1 / 2 (50)\overline \bm C_{n}(kn) = \bm \mu^{1/2} (\sum_{i=0}^{n-1} \bm X_{kn+i}^{\dag} \bm H \bm X_{kn+i}) \bm \mu^{1/2} \tag{50} Cn(kn)=μ1/2(i=0∑n−1Xkn+i†HXkn+i)μ1/2(50)
定义 λ‾ k \overline \lambda_{k} λk 是 C‾ n ( k n ) \overline \bm C_{n}(kn) Cn(kn) 的最小特征值,从之前文献中的定理可知,if Xk X_{k} Xk, and hence Gk \bm G_{k} Gk, is ergodic. Then ϵ { λ k } > 0 \epsilon\{\lambda_{k}\} > 0 ϵ{λk}>0 是指数稳定的充分条件,从之前文献中的定理可知,如果 ϵ { λ‾ k } > 0 \epsilon\{\overline \lambda_{k}\} > 0 ϵ{λk}>0,这就是成立的。
现在,准备证明 UFLMS 算法的收敛定理(类似于之前文献中的定理)。
定理2 对于各态历经并且有界的输入,如果存在一个有限整数 n n n 满足以下条件,那么对于 μ ∈ ( 0 , 1 / M ) \mu \in (0, 1/M) μ∈(0,1/M),UFLMS 算法是几乎确定指数收敛的:
ϵ { λ m i n ( ∑ i = 0 n − 1 X i † H X i ) } > 0 (51)\epsilon\{\lambda_{min} (\sum_{i=0}^{n-1} \bm X_{i}^{\dag} \bm H \bm X_{i})\} > 0 \tag{51} ϵ{λmin(i=0∑n−1Xi†HXi)}>0(51)
此外,如果输入信号的协方差矩阵的阶数是 N N N,那么该条件成立。前一种主张是用定理陈述之前的论点建立起来的。后一种主张来自各态历经性— if {χk } \{\bm \chi_{k}\} {χk}, hence {Xk } \{\bm X_{k}\} {Xk} and {Gk } \{\bm G_{k}\} {Gk}, is ergodic, then the summation in ( 51 ) (51) (51) behaves like n n n times the expected value as n n n gets large. 因此, 如果 ϵ { X k † H X k } \epsilon \{\bm X_{k}^{\dag} \bm H \bm X_{k}\} ϵ{Xk†HXk} 是满秩的,那么,对于一些 n n n, ( 51 ) (51) (51) 是可以满足的。在附录中,作者指出,只要输入信号的协方差矩阵的秩是 N N N,那么, ϵ { X k † H X k } \epsilon \{\bm X_{k}^{\dag} \bm H \bm X_{k}\} ϵ{Xk†HXk} 是满秩的,阶数为 2 N 2N 2N。
作者在本节使用之前文献中提出的技术,证明了 UFLMS 算法的几乎确定指数收敛性。在证明收敛性的过程中,作者使用了证明 LMS 算法的收敛性时所使用的条件。 唯一的附加条件是待辨识系统的阶数小于或等于 N N N。
UFLMS 算法相比于 FLMS 算法(可参考 论文笔记之 FLMS)的主要优势在于,前者对于不同的频点可选择不同的收敛因子,这使得算法能更快地收敛。下节比较了 LMS 和 UFLMS 算法的收敛率,并给出了选择不同收敛因子的实用方法。
6. 仿真结果
在上一节中,选取 μ i ∈ ( 0 , 1 / M i ) \mu_{i} \in (0, 1/M_{i}) μi∈(0,1/Mi),其中 M i M_{i} Mi 是频率 i i i 的上界。因为在实际应用中,并不能知道这些上界,作者选择通过估计第 i i i 个频率处的能量来归一化一个常数收敛因子 α \alpha α,进而来估计 M i M_{i} Mi。 该归一化与格型自适应滤波器中使用的过程类似:
μ k + 1 ( i ) = α z ( i ) k (52)\mu_{k+1}(i) = \frac{\alpha}{z(i)_{k}} \tag{52} μk+1(i)=z(i)kα(52)
其中
z ( i ) k = ( 1 − β ) z ( i ) k − 1 + β X k ( i ) X k ∗ ( i ) (53)z(i)_{k} = (1-\beta)z(i)_{k-1} + \beta X_{k}(i) X_{k}^{*}(i) \tag{53} z(i)k=(1−β)z(i)k−1+βXk(i)Xk∗(i)(53)
i i i 是频率索引, α \alpha α 是用于所有频率的归一化收敛因子, β \beta β 是用于所有频率的能量平滑常量。 与格型自适应滤波算法一样,可以根据应用使用不同的平滑和归一化算法。
为了说明 UFLMS 算法对于高度相关的输入信号具有快速的收敛率,作者讨论了两种系统辨识的仿真,一种具有不相关的输入信号,另一种具有高度相关的输入信号。
选用一个长为 32 32 32 的 FIR 滤波器作为待辨识系统,表1 给出了其冲激响应的真实值。This FIR filter approximates a transhybrid response. 在第一个实验中,输入信号 χ ( n ) \chi(n) χ(n) 是均匀分布在 − 1000 ~ 1000 -1000~1000 −1000~1000 之间的随机白噪声。期望响应 d k d_{k} dk 是 χ ( n ) \chi(n) χ(n) 与 FIR 滤波器卷积的结果。在仿真实验中,作者将 d k d_{k} dk 从浮点转换为整数表示,因此,加性噪声就是量化噪声。图3 给出了计算机模型的框图。
图4 给出了 UFLMS 和 LMS 算法的收敛性(表示为期望响应信号与误差信号之间的信噪比,单位为分贝)。可以看出,两个算法具有几乎相同的收敛率,正如上节讨论所预期的那样。对于 LMS 算法,选取 μ = 0.1 × 1 0−5 \mu = 0.1 \times 10^{-5} μ=0.1×10−5 以实现最快的收敛率。在 UFLMS 算法中,选取 α = 0.4 , β = 0.8 \alpha = 0.4, \beta = 0.8 α=0.4,β=0.8 来达到与 LMS 算法相同的失调误差。
在第二个实验中,通过将第一个实验中的白噪声经过一个 12 12 12 阶的全极点滤波器,将输入信号变为高度相关的信号。表2 给出了该全极点滤波器的系数。使用该滤波器, λmax / λmin \lambda_{max} / \lambda_{min} λmax/λmin 的值可以达到 20 20 20。
图5 给出了 LMS 和 UFLMS 算法对于相关信号的收敛率。可以看出,UFLMS 算法对于相关信号的收敛率与不相关信号的收敛率几乎一样。而 LMS 算法对于高度相关的信号有着很慢的收敛率。对于 LMS 算法,选择 μ = 0.2 × 1 0−7 \mu = 0.2 \times 10^{-7} μ=0.2×10−7 以实现尽可能快的收敛。对于 UFLMS 算法,选取 α = 0.09 , β = 0.8 \alpha = 0.09,\beta = 0.8 α=0.09,β=0.8 来达到相同的失调误差。这些仿真结果表明,在处理高度相关的信号时,UFLMS 算法优于 LMS 算法。
当 N N N 很大时,该算法是很有效的。为了输出 N N N 个点,传统 LMS 算法需要 N N N 次迭代,或者 N ( 2 N + 3 ) N(2N + 3) N(2N+3) 次实数乘法。同样输出 N N N 个点,UFLMS 算法需要三个 2 N 2N 2N 点的实数 FFT,两个 2 N 2N 2N 点的复数乘法以及两个 2 N 2N 2N 点的实数乘法。对于实数输入,FFT 的输出是共轭对称的,因此,只需要更新前 N N N 个值。此外,对于实数数据,the 2 N 2N 2N-point FFT can be realized with an N N N-point FFT and N N N complex multiplies using an array of N N N complex points. 每个 N N N 点 FFT 需要 N / 2 log N / 2 N/2 \; \text{log} \; N/2 N/2logN/2 复数乘法。因此,每个块需要的复数乘法为: 3 ( N / 2 log N / 2 + N ) 3(N/2 \; \text{log} \; N/2 + N) 3(N/2logN/2+N) 用于三个 FFT; 2 N 2N 2N 用于复数加权和自适应。需要的实数乘法为 2 N 2N 2N,用于计算收敛常量。对于自适应的收敛常量,还需要 5 N 5N 5N 点额外的实数乘法。
假设一个复数乘法等于四个实数乘法,那么,UFLMS 实数乘法和 LMS 实数乘法的比率 γ \gamma γ 为:
γ 1 = 6 log N 2 + 22 2 N + 3 (54)\gamma_{1} = \frac{6 \; \text{log} \frac{N}{2} + 22}{2N + 3} \tag{54} γ1=2N+36log2N+22(54)
适用于常量收敛因子,以及
γ 2 = 6 log N 2 + 27 2 N + 3 (55)\gamma_{2} = \frac{6 \; \text{log} \frac{N}{2} + 27}{2N + 3} \tag{55} γ2=2N+36log2N+27(55)
适用于自适应收敛因子。下表计算了一些 N N N 值的比率。
从表中可以看出,当 N = 32 N=32 N=32 时,所提出的算法已经比 LMS 算法更有效。
The UFLMS algorithm requires three real arrays of 2 N 2N 2N points each for the three FFT’s and one 2 N 2N 2N real data array for the filter coefficients. For the adaptive convergence factor, one more array of N N N real data points is needed. The sine table for the FFT needs an array of N / 4 N/4 N/4 real data points. 总体上,相比于LMS算法所需要的 2 N 2N 2N 点的内存,UFLMS 算法需要 8 N 8N 8N 点的内存。
7. 结论
作者提出了一种新的频域自适应滤波器。并证明了当滤波器的阶数大于等于待辨识系统的阶数时,UFLMS 算法收敛到维纳解。对于大的抽头数( ≥ 32 \geq 32 ≥32),该算法是非常有效的,复杂度为 0 ( log N ) 0(\text{log} \; N) 0(logN)。对于高度不同的特征值,具有自适应收敛常量的 UFLMS 算法的收敛速度快于 LMS 算法。
8. 附录
本附录要证明,如果输入信号协方差矩阵的秩至少为 N + 1 N + 1 N+1,那么, ( 27 ) (27) (27) 中矩阵 r r r 的秩是 2 N 2N 2N。
r = ϵ { χ k † h χ k } = F − 1 ϵ { X k † H X k } F (A1)\bm r = \epsilon \{\bm \chi_{k}^{\dag} \bm h \bm \chi_{k} \} = \bm F^{-1} \epsilon \{\bm X_{k}^{\dag} \bm H \bm X_{k} \} \bm F \tag{A1} r=ϵ{χk†hχk}=F−1ϵ{Xk†HXk}F(A1)
令 χ k ′ = h χ k \bm \chi_{k}^{'} = \bm h \bm \chi_{k} χk′=hχk,并且已知 h = h ⋅ h \bm h = \bm h \cdot \bm h h=h⋅h,可得:
r = ϵ { ( χ k ′ ) † χ k ′ } (A2)\bm r = \epsilon \{(\bm \chi_{k}^{'})^{\dag} \bm \chi_{k}^{'} \} \tag{A2} r=ϵ{(χk′)†χk′}(A2)
为了使矩阵 r \bm r r 是奇异的,必须存在某些向量 V ≠ 0 \bm V \neq 0 V=0,使得:
V † r V = V † ϵ { ( χ k ′ ) † χ k ′ } V = 0 (A3)\bm V^{\dag} \bm r \bm V = \bm V^{\dag} \epsilon \{(\bm \chi_{k}^{'})^{\dag} \bm \chi_{k}^{'} \} \bm V = 0 \tag{A3} V†rV=V†ϵ{(χk′)†χk′}V=0(A3)
ϵ { ( χ k ′ V ) † ( χ k ′ V ) } = 0 (A4)\epsilon \{(\bm \chi_{k}^{'} \bm V)^{\dag} (\bm \chi_{k}^{'} \bm V)\} = 0 \tag{A4} ϵ{(χk′V)†(χk′V)}=0(A4)
但从论证的非负性来看,这意味着:
( χ k ′ V ) = 0 almost surely (A5)(\bm \chi_{k}^{'} \bm V) = 0 \quad \text{almost surely} \tag{A5} (χk′V)=0almost surely(A5)
这意味着向量 V \bm V V 必须正交于 χ k ′ \bm \chi_{k}^{'} χk′ 的所有行(或者说, ( χ k ′ ) † (\bm \chi_{k}^{'})^{\dag} (χk′)† 的所有列)。
为了找到满足 ( A 5 ) (A5) (A5) 的输入信号的条件,显示地重写该方程。 ( χ k ′ ) † (\bm \chi_{k}^{'})^{\dag} (χk′)† 是一个 2 N × 2 N 2N \times 2N 2N×2N 的矩阵,并且其前 N N N 列为零,它可以被写成以下形式:
( χ k ′ ) T = [ χ k N χ k N + 1 ⋯ χ k N + N − 1 χ k N − 1 χ k N ⋯ χ k N + N − 2⋮ ⋮ ⋮ ⋮ χ k N + 1 χ k N + 2 ⋯ χ k N − N ] (A6)(\bm \chi_{k}^{'})^{T} = \begin{bmatrix} \chi_{kN} & \chi_{kN + 1} & \cdots & \chi_{kN + N - 1} \\ \chi_{kN - 1} & \chi_{kN} & \cdots & \chi_{kN + N - 2} \\ \vdots & \vdots & \vdots & \vdots \\ \chi_{kN + 1} & \chi_{kN + 2} & \cdots & \chi_{kN - N} \end{bmatrix} \tag{A6} (χk′)T=⎣⎢⎢⎢⎡χkNχkN−1⋮χkN+1χkN+1χkN⋮χkN+2⋯⋯⋮⋯χkN+N−1χkN+N−2⋮χkN−N⎦⎥⎥⎥⎤(A6)
因为 V \bm V V 必须与 ( χ k ′ ) † (\bm \chi_{k}^{'})^{\dag} (χk′)† 中所有的 N N N 列正交,从最右边的列开始,对于每个 k k k,都有以下 N N N 个方程组:
v 1 χ k N + N − 1 + v 2 χ k N + N − 2 + ⋯ + v 2 N χ k N − N = 0 (A7a)v_{1} \chi_{kN + N - 1} + v_{2} \chi_{kN + N - 2} + \cdots + v_{2N} \chi_{kN - N} = 0 \tag{A7a} v1χkN+N−1+v2χkN+N−2+⋯+v2NχkN−N=0(A7a)
v 1 χ k N + N − 2 + v 2 χ k N + N − 3 + ⋯ + v 2 N χ k N + N − 1 = 0 (A7b)v_{1} \chi_{kN + N - 2} + v_{2} \chi_{kN + N - 3} + \cdots + v_{2N} \chi_{kN + N - 1} = 0 \tag{A7b} v1χkN+N−2+v2χkN+N−3+⋯+v2NχkN+N−1=0(A7b)
⋮ ⋮ \vdots \qquad \qquad \qquad \vdots ⋮⋮
v1 χ k N +v2 χ k N − 1 + ⋯ +v 2 N χ k N + 1 = 0 v_{1} \chi_{kN} + v_{2} \chi_{kN - 1} + \cdots + v_{2N} \chi_{kN + 1} = 0 v1χkN+v2χkN−1+⋯+v2NχkN+1=0
给 (A7a) \text{(A7a)} (A7a) 乘以 χ(k−1)N \chi_{(k-1)N} χ(k−1)N,给 (A7b) \text{(A7b)} (A7b) 乘以 χ(k−1)N−1 \chi_{(k-1)N - 1} χ(k−1)N−1,并对所有 k k k 求期望,可得:
r 2 N − 1 v 1 + r 2 N − 2 v 2 + ⋯ + r 0 v 2 N = 0 (A8a)r_{2N - 1} v_{1} + r_{2N - 2} v_{2} + \cdots + r_{0} v_{2N} = 0 \tag{A8a} r2N−1v1+r2N−2v2+⋯+r0v2N=0(A8a)
r 2 N − 1 v 1 + r 2 N − 2 v 2 + ⋯ + r 2 N v 2 N = 0 (A8b)r_{2N - 1} v_{1} + r_{2N - 2} v_{2} + \cdots + r_{2N} v_{2N} = 0 \tag{A8b} r2N−1v1+r2N−2v2+⋯+r2Nv2N=0(A8b)
对上述两个方程做减法,可得:
( r 0 − r 2 N ) v 2 N = 0 (A9)(r_{0} - r_{2N}) v_{2N} = 0 \tag{A9} (r0−r2N)v2N=0(A9)
要么 v2N = 0 v_{2N} = 0 v2N=0或者 r 0 = r2N r_{0} = r_{2N} r0=r2N,对于平稳信号,只有当 χ l = χ2N+l \chi_{l} = \chi_{2N + l} χl=χ2N+l 时,这才是成立的。如果输入信号的周期不正好是 2 N 2N 2N,那么, r 0 ≠ r2N ( actually r2N < r 0 ) r_{0} \neq r_{2N} \; (\text{actually } r_{2N} < r_{0}) r0=r2N(actually r2N<r0),所以,这种情况下只能是 v2N = 0 v_{2N} = 0 v2N=0。
接着,对于 χ l ≠ χ2N+l \chi_{l} \neq \chi_{2N + l} χl=χ2N+l,在 v2N = 0 v_{2N} = 0 v2N=0 的情况下,可以给 (A7a) \text{(A7a)} (A7a) 乘以 χ(k−1)N+1 \chi_{(k-1)N + 1} χ(k−1)N+1,and multiply the equation following (A7b) \text{(A7b)} (A7b) by χ ( k − 1 ) N − 1\chi_{(k-1)N - 1} χ(k−1)N−1, and similarly get as in (A9) \text{(A9)} (A9):
( r 0 − r 2 N ) v 2 N − 1 = 0 (A10)(r_{0} - r_{2N}) v_{2N - 1} = 0 \tag{A10} (r0−r2N)v2N−1=0(A10)
This can continue for as many equations as we have, minus one, leading to:
v 2 N = v 2 N − 1 = ⋯ = v N + 1 = 0 (A11)v_{2N} = v_{2N - 1} = \cdots = v_{N + 1} = 0 \tag{A11} v2N=v2N−1=⋯=vN+1=0(A11)
如果 r 0 ≠ r2N r_{0} \neq r_{2N} r0=r2N,或者如果信号是周期性的,并且周期不正好是 2 N 2N 2N。
That leave us with N N N equations with N + 1 N + 1 N+1 variables, v1 ⋯ ,v N + 1v_{1} \cdots, v_{N+1} v1⋯,vN+1. (A7a) \text{(A7a)} (A7a) 可以写成:
∑ i = 0 N χ k N + N − ( 1 − i ) v i = 0 (A12)\sum_{i=0}^{N} \chi_{kN+N-(1-i)} v_{i} = 0 \tag{A12} i=0∑NχkN+N−(1−i)vi=0(A12)
(A7) \text{(A7)} (A7) 的第 l l l 个方程可以写成:
∑ i = 0 N χ k N + N − ( l + i ) v i = 0 (A13)\sum_{i=0}^{N} \chi_{kN+N-(l+i)} v_{i} = 0 \tag{A13} i=0∑NχkN+N−(l+i)vi=0(A13)
或者
( ∑ i = 0 N χ k N + N − ( l + i ) v i ) ( ∑ j = 0 N χ k N + N − ( l + j ) v j ) = 0 (A14)(\sum_{i=0}^{N} \chi_{kN+N-(l+i)} v_{i}) (\sum_{j=0}^{N} \chi_{kN+N-(l+j)} v_{j}) = 0\tag{A14} (i=0∑NχkN+N−(l+i)vi)(j=0∑NχkN+N−(l+j)vj)=0(A14)
通过对 l l l 从 1 1 1 到 N N N 求和,并对所有 k k k 取期望值,可得:
ϵ { ∑ l = 1 N ( ∑ i = 0 N χ k N + N − ( l + i ) v i ∑ j = 0 N χ k N + N − ( l + j ) v j ) } = 0 (A15)\epsilon \{\sum_{l=1}^{N} (\sum_{i=0}^{N} \chi_{kN+N-(l+i)} v_{i} \sum_{j=0}^{N} \chi_{kN+N-(l+j)} v_{j}) \} = 0 \tag{A15} ϵ{l=1∑N(i=0∑NχkN+N−(l+i)vij=0∑NχkN+N−(l+j)vj)}=0(A15)
或者
∑ l = 0 N ∑ j = 0 N r ( i − j ) v l v j = 0 (A16)\sum_{l=0}^{N} \sum_{j=0}^{N} r(i - j) v_{l} v_{j} = 0 \tag{A16} l=0∑Nj=0∑Nr(i−j)vlvj=0(A16)
由于假设元素为 r ( i − j ) r(i - j) r(i−j) 的协方差矩阵的秩为 N + 1 N + 1 N+1,这意味着:
vk = 0 for k = 1 , 2 , ⋯ , N + 1 , v_{k} = 0 \; \text{for} \; k=1, 2, \cdots, N + 1, vk=0fork=1,2,⋯,N+1,
证明 V = 0 \bm V = \bm 0 V=0,并且 (A1) \text{(A1)} (A1) 中的 r \bm r r 必须是非奇异的。
9. 后记
最初学习这篇论文是在读研究生的时候,第一眼看到论文中这么多公式,就没勇气继续往下读。这次在翻译这篇文章的过程中,重新仔细阅读了该论文。
如果只是想知道 UFLMS 算法的计算过程,只要注意到它比 FLMS 算法(可参考 论文笔记之 FLMS)少两个 FFT 运算即可,即少了对梯度的时域约束。这也是 Unconstrained 名称的由来。