本文对 B. Widrow 等人于 1975 年在 Proceedings of the IEEE 上发表的论文进行简单地翻译。如有表述不当之处欢迎批评指正。欢迎任何形式的转载,但请务必注明出处。
论文链接:https://isl.stanford.edu/~widrow/papers/j1975thecomplex.pdf
1. 论文目的
提出 LMS 算法的复数形式。
2. 摘要
论文推导了用于复数信号的 LMS 自适应算法。原始的 Widrow-Hoff LMS 算法是 W j + 1 = W j + 2 μ ϵ j X j W_{j+1}=W_{j}+2\mu \epsilon_{j} X_{j} Wj+1=Wj+2μϵjXj 。其复数形式为: W j + 1 = W j + 2 μ ϵ j X ‾ j \bm{W_{j+1}=W_{j}}+2\mu \bm{\epsilon_{j} \overline{X}_{j}} Wj+1=Wj+2μϵjXj 。其中,黑体表示复数信号,横线表示复数共轭。
3. 实数 LMS 算法
自适应线性组合器是许多自适应系统中的关键元素。它的功能是对一组输入信号进行加权、求和,以生成自适应输出。时刻
j
j
j 的输入信号向量
X
X
X 和权重向量
W
W
W 定义为:
X
j
=
{
x
1
j
x
2
j
⋮
x
n
j
}
W
j
=
{
w
1
j
w
2
j
⋮
w
n
j
}
(1)
X_{j}= \begin{Bmatrix} x_{1j} \\ x_{2j} \\ \vdots \\ x_{nj} \end{Bmatrix} \quad W_{j}= \begin{Bmatrix} w_{1j} \\ w_{2j} \\ \vdots \\ w_{nj} \end{Bmatrix} \tag{1}
Xj=⎩
⎨
⎧x1jx2j⋮xnj⎭
⎬
⎫Wj=⎩
⎨
⎧w1jw2j⋮wnj⎭
⎬
⎫(1)
输入信号是离散时间信号,而且权重是可变的。
j
j
j 时刻的输出为:
y
j
=
X
j
T
W
j
=
W
j
T
X
j
(2)
y_{j}=X_{j}^{T}W_{j}=W_{j}^{T}X_{j}\tag{2}
yj=XjTWj=WjTXj(2)
自适应过程中所需要的误差信号
ϵ
j
\epsilon_{j}
ϵj 是期望响应
d
j
d_{j}
dj 和输出信号
y
j
y_{j}
yj 之间的的差:
ϵ
j
=
d
j
−
y
j
=
d
j
−
W
j
T
X
j
(3)
\epsilon_{j}=d_{j}-y_{j}=d_{j}-W_{j}^{T}X_{j} \tag{3}
ϵj=dj−yj=dj−WjTXj(3)
LMS 自适应算法在每个采样时刻,通过递归地更改权重向量
W
j
W_{j}
Wj 来最小化均方误差
ϵ
j
\epsilon_{j}
ϵj:
W
j
+
1
=
W
j
+
2
μ
ϵ
j
X
j
(4)
W_{j+1}=W_{j}+2\mu \epsilon_{j} X_{j} \tag{4}
Wj+1=Wj+2μϵjXj(4)
其中, μ \mu μ 是收敛因子,用以控制自适应的稳定性和速率。该算法基于最陡下降法,它根据均方误差的瞬时梯度估计值按比例地移动 W j W_{j} Wj。已有文献证明其收敛性,推导其性能特征以及给出具体应用。
4. 复数 LMS 算法
自适应线性组合器的某些应用需要复数输出。 These include the adaptive filtering of high-frequency narrow-band signals at an intermediate frequency, in which case both X j X_{j} Xj and d j d_{j} dj are translated in frequency without changing their phase relationships.
图1 展示了复数自适应线性组合器的两种表示方式。复数输入向量
X
j
{\bm X_{j}}
Xj 和复数权重向量
W
j
{\bm W_{j}}
Wj 分别为:
X
j
≜
{
x
1
R
j
x
2
R
j
⋮
x
n
R
j
}
+
i
{
x
1
I
j
x
2
I
j
⋮
x
n
I
j
}
=
X
R
j
+
i
X
I
j
W
j
≜
{
w
1
R
j
w
2
R
j
⋮
w
n
R
j
}
+
i
{
w
1
I
j
w
2
I
j
⋮
w
n
I
j
}
=
W
R
j
+
i
W
I
j
(5)
{\bm X_{j}} \triangleq \begin{Bmatrix} x_{1Rj} \\ x_{2Rj} \\ \vdots \\ x_{nRj} \end{Bmatrix} +i \begin{Bmatrix} x_{1Ij} \\ x_{2Ij} \\ \vdots \\ x_{nIj} \end{Bmatrix} =X_{Rj} + iX_{Ij} \\ {\bm W_{j}} \triangleq \begin{Bmatrix} w_{1Rj} \\ w_{2Rj} \\ \vdots \\ w_{nRj} \end{Bmatrix} +i \begin{Bmatrix} w_{1Ij} \\ w_{2Ij} \\ \vdots \\ w_{nIj} \end{Bmatrix} =W_{Rj} + iW_{Ij} \tag{5}
Xj≜⎩
⎨
⎧x1Rjx2Rj⋮xnRj⎭
⎬
⎫+i⎩
⎨
⎧x1Ijx2Ij⋮xnIj⎭
⎬
⎫=XRj+iXIjWj≜⎩
⎨
⎧w1Rjw2Rj⋮wnRj⎭
⎬
⎫+i⎩
⎨
⎧w1Ijw2Ij⋮wnIj⎭
⎬
⎫=WRj+iWIj(5)
其中,
R
R
R 表示信号的实部,
I
I
I 表示信号的虚部。尽管图1(a) 展示了每个输入对与四个权值相关联,但实际上只展示了两个自由度。复数误差和期望响应为:
ϵ
j
≜
ϵ
R
j
+
i
ϵ
I
j
d
j
≜
d
R
j
+
i
d
I
j
(6)
{\bm \epsilon_{j}} \triangleq \epsilon_{Rj} + i\epsilon_{Ij} \\ {\bm d_{j}} \triangleq d_{Rj} + id_{Ij} \tag{6}
ϵj≜ϵRj+iϵIjdj≜dRj+idIj(6)
相应的复数输出信号为:
y
j
≜
y
R
j
+
i
y
I
j
(7)
{\bm y_{j}} \triangleq y_{Rj} + iy_{Ij} \tag{7}
yj≜yRj+iyIj(7)
(
2
)
(2)
(2) 和
(
3
)
(3)
(3) 可以表达为以下复数形式:
y
j
=
X
j
T
W
j
=
W
j
T
X
j
(8)
{\bm y}_{j}={\bm X}_{j}^{T} {\bm W}_{j} = {\bm W}_{j}^{T} {\bm X}_{j}\tag{8}
yj=XjTWj=WjTXj(8)
ϵ
j
=
d
j
−
y
j
=
d
j
−
W
j
T
X
j
=
d
j
−
X
j
T
W
j
(9)
{\bm \epsilon}_{j}={\bm d}_{j} - {\bm y}_{j} = {\bm d}_{j} - {\bm W}_{j}^{T} {\bm X}_{j} = {\bm d}_{j} - {\bm X}_{j}^{T} {\bm W}_{j} \tag{9}
ϵj=dj−yj=dj−WjTXj=dj−XjTWj(9)
尽管这些方程比 ( 2 ) (2) (2) 和 ( 3 ) (3) (3) 更通用,但它们完全对应。所有的乘法和加法都是复数的。
复数 LMS 算法必须能够同时自适应
W
j
{\bm W}_{j}
Wj 的实部和虚部,即在某种意义上最小化
ϵ
R
j
\epsilon_{Rj}
ϵRj 和
ϵ
I
j
\epsilon_{Ij}
ϵIj。一个合理的目标是最小化 the average total error power:
E
[
ϵ
j
ϵ
‾
j
]
=
E
[
ϵ
R
j
2
+
ϵ
I
j
2
]
=
E
[
ϵ
R
j
2
]
+
E
[
ϵ
I
j
2
]
(10)
E[{\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j}] = E[\epsilon_{Rj}^{2}+\epsilon_{Ij}^{2}] = E[\epsilon_{Rj}^{2}] + E[\epsilon_{Ij}^{2}] \tag{10}
E[ϵjϵj]=E[ϵRj2+ϵIj2]=E[ϵRj2]+E[ϵIj2](10)
其中, E E E 表示取期望。由于误差的两个分量彼此正交,因此它们不能独立地被最小化。
最小化
E
[
ϵ
j
ϵ
‾
j
]
E[{\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j}]
E[ϵjϵj] 的复数 LMS 算法的推导与原始 LMS 算法的推导类似,只是必须遵守复代数规则。复数误差信号
(
9
)
(9)
(9) 的共轭为:
ϵ
‾
j
=
d
‾
j
−
W
‾
j
T
X
‾
j
=
d
‾
j
−
X
‾
j
T
W
‾
j
(11)
\overline{{\bm \epsilon}}_{j} = \overline{{\bm d}}_{j} - \overline{{\bm W}}_{j}^{T} \overline{{\bm X}}_{j} = \overline{{\bm d}}_{j} - \overline{{\bm X}}_{j}^{T} \overline{{\bm W}}_{j}\tag{11}
ϵj=dj−WjTXj=dj−XjTWj(11)
ϵ
j
ϵ
‾
j
{\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j}
ϵjϵj 相对于权重向量实部的瞬时梯度为:
▽
R
(
ϵ
j
ϵ
‾
j
)
≜
{
∂
(
ϵ
j
ϵ
‾
j
)
∂
w
1
R
⋮
∂
(
ϵ
j
ϵ
‾
j
)
∂
w
n
R
}
=
ϵ
j
▽
R
(
ϵ
‾
j
)
+
ϵ
‾
j
▽
R
(
ϵ
j
)
=
ϵ
j
(
−
X
‾
j
)
+
ϵ
‾
j
(
−
X
j
)
(12)
\bigtriangledown_{R}({\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j}) \triangleq \begin{Bmatrix} \frac{\partial ({\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j})}{\partial w_{1R}} \\ \vdots \\ \frac{\partial ({\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j})}{\partial w_{nR}} \end{Bmatrix} = {\bm \epsilon}_{j}\bigtriangledown_{R}(\overline{{\bm \epsilon}}_{j}) + \overline{{\bm \epsilon}}_{j}\bigtriangledown_{R}({\bm \epsilon}_{j}) = {\bm \epsilon}_{j}(-\overline{{\bm X}}_{j}) + \overline{{\bm \epsilon}}_{j}(-{\bm X}_{j}) \tag{12}
▽R(ϵjϵj)≜⎩
⎨
⎧∂w1R∂(ϵjϵj)⋮∂wnR∂(ϵjϵj)⎭
⎬
⎫=ϵj▽R(ϵj)+ϵj▽R(ϵj)=ϵj(−Xj)+ϵj(−Xj)(12)
相对于权重向量虚部的瞬时梯度为:
▽
I
(
ϵ
j
ϵ
‾
j
)
=
ϵ
j
▽
I
(
ϵ
‾
j
)
+
ϵ
‾
j
▽
I
(
ϵ
j
)
=
ϵ
j
(
i
X
‾
j
)
+
ϵ
‾
j
(
−
i
X
j
)
(13)
\bigtriangledown_{I}({\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j}) = {\bm \epsilon}_{j}\bigtriangledown_{I}(\overline{{\bm \epsilon}}_{j}) + \overline{{\bm \epsilon}}_{j}\bigtriangledown_{I}({\bm \epsilon}_{j}) = {\bm \epsilon}_{j}(i\overline{{\bm X}}_{j}) + \overline{{\bm \epsilon}}_{j}(-i{\bm X}_{j}) \tag{13}
▽I(ϵjϵj)=ϵj▽I(ϵj)+ϵj▽I(ϵj)=ϵj(iXj)+ϵj(−iXj)(13)
对权重向量的实部和虚部使用最陡下降法,即沿着各自的负梯度估计方向改变它们的值,可以得到:
W
R
j
+
1
=
W
R
j
−
μ
▽
R
(
ϵ
j
ϵ
‾
j
)
W
I
j
+
1
=
W
I
j
−
μ
▽
I
(
ϵ
j
ϵ
‾
j
)
(14)
W_{Rj+1}=W_{Rj} - \mu \bigtriangledown_{R}({\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j}) \\ W_{Ij+1}=W_{Ij} - \mu \bigtriangledown_{I}({\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j}) \tag{14}
WRj+1=WRj−μ▽R(ϵjϵj)WIj+1=WIj−μ▽I(ϵjϵj)(14)
因为复数权重向量是
W
j
=
W
R
j
+
i
W
I
j
{\bm W}_{j} = W_{Rj} + iW_{Ij}
Wj=WRj+iWIj,所以复数权重迭代准则可以被表述为:
W
j
+
1
=
W
j
−
μ
[
▽
R
(
ϵ
j
ϵ
‾
j
)
+
i
▽
I
(
ϵ
j
ϵ
‾
j
)
]
(15)
{\bm W}_{j+1} = {\bm W}_{j} - \mu [\bigtriangledown_{R}({\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j}) + i\bigtriangledown_{I}({\bm \epsilon}_{j} \overline{{\bm \epsilon}}_{j})] \tag{15}
Wj+1=Wj−μ[▽R(ϵjϵj)+i▽I(ϵjϵj)](15)
将
(
12
)
(12)
(12) 和
(
13
)
(13)
(13) 的梯度代入到
(
15
)
(15)
(15) 中,则 LMS 算法的复数形式为:
W
j
+
1
=
W
j
+
2
μ
ϵ
j
X
‾
j
(16)
{\bm W}_{j+1} = {\bm W}_{j} + 2\mu {\bm \epsilon}_{j} \overline{{\bm X}}_{j} \tag{16}
Wj+1=Wj+2μϵjXj(16)
5. 后记
论文给出了 LMS 算法的复数形式,有个小疑问:该复数 LMS 算法是不是应该认为是在时域的复数信号上定义的?