前段时间翻阅了较多关于SOBI算法的文献,很多文献谈到了这种方法的来源、优缺点、应用层面和大致原理。
但是没有文献能够从头到尾详细推导该算法公式的。本人对该算法公式进行了详尽的数学推导,仅供参考。
背景
“鸡尾酒会”问题可以看做是盲源分离问题的起源。许多人在鸡尾酒会上交谈,而且其中还可能夹杂着背景噪音等,但是互相交谈的人却能准确清晰地听到对方所说的话。在嘈杂情况下,这种将注意力集中到某个人的谈话而忽略背景中其它对话或噪音的现象称为“鸡尾酒会效应”,这种效应揭示了人耳对声音的辨别选择能力。
接收信号模型
把这个问题抽象出来可以表示为:
使用
x
1
、
x
2
、
.
.
.
x
L
1
\mathbf{x}_1、\mathbf{x}_2、...\mathbf{x}_{L_1}
x1、x2、...xL1表示
L
1
L_1
L1个接收天线的接收数据,
s
1
、
s
2
、
.
.
.
s
L
2
\mathbf{s}_1、\mathbf{s}_2、...\mathbf{s}_{L_2}
s1、s2、...sL2表示
L
2
L_2
L2个发射天线的发射数据。
接收信号模型可以表示为:
其中,矩阵
X
\mathbf{X}
X表示接收信号模型,
A
\mathbf{A}
A表示平稳信道矩阵,
S
\mathbf{S}
S表示发射信号模型,
N
\mathbf{N}
N表示加性噪声。
L
1
L_1
L1表示接收天线数量,
L
2
L_2
L2表示发射天线数量。
在此只讨论, L 1 = L 2 L_1=L_2 L1=L2的正定情况。为方便描述,在此给出以下四个假设条件:
- L = L 1 = L 2 L=L_1=L_2 L=L1=L2,即收发天线数量相等,且信道矩阵 A \mathbf{A} A是满秩的。
- 发射信号是空域不相关而时域相关的。
- 发射信号是方差时变意义下的二阶非平稳或平稳信号
- 加性噪声与发射信号独立,它们可以是空域有色而时域白色。
我们的目的就是从混合接收信号矩阵
X
\mathbf{X}
X中分离出源信号
S
\mathbf{S}
S,为此,我们可以求出信道矩阵的逆矩阵
W
=
A
−
1
\mathbf{W}=\mathbf{A}^{-1}
W=A−1,来从混合信号中分离出源信号:
S
^
=
W
X
\hat{\mathbf{S}}=\mathbf{W}\mathbf{X}
S^=WX
在明确目标后,我们尝试求解该问题。以下只讲步骤,不讲原理,想知道原理的可自行查阅文献。
预处理
预处理是求解问题的第一步
零均值化
先把接收信号减去其均值,使其均值为0,这步比较简单,一笔带过。
X
=
X
−
X
ˉ
\mathbf{X=X-\bar{X}}
X=X−Xˉ
白化
首先给出发射信号
S
\mathbf{S}
S和加性噪声
N
\mathbf{N}
N的零时延自相关函数矩阵:
其中
σ
n
2
\sigma^2_{n}
σn2表示噪声功率。由此可得接收信号
X
\mathbf{X}
X的零时延自相关函数矩阵:
R
X
(
0
)
=
A
R
S
(
0
)
A
H
+
σ
n
2
I
\mathbf{R_X}(0)=\mathbf{AR_S}(0)\mathbf{A}^H+\sigma^2_{n}\mathbf{I}
RX(0)=ARS(0)AH+σn2I
等式两边同时做谱分解可得:
V
X
Λ
X
V
X
H
=
V
S
Λ
S
V
S
H
+
σ
n
2
I
\mathbf{V_X\Lambda_XV_X}^H=\mathbf{V_S\Lambda_SV_S}^H+\sigma^2_{n}\mathbf{I}
VXΛXVXH=VSΛSVSH+σn2I
移项
V
X
(
Λ
X
−
σ
n
2
I
)
V
X
H
=
V
S
Λ
S
V
S
H
\mathbf{V_X(\Lambda_X-\sigma^2_{n}\mathbf{I})V_X}^H=\mathbf{V_S\Lambda_SV_S}^H
VX(ΛX−σn2I)VXH=VSΛSVSH
取
Q
=
(
Λ
X
−
σ
n
2
I
)
−
1
2
V
X
H
\mathbf{Q}=\mathbf{(\Lambda_X-\sigma^2_{n}\mathbf{I})^{-\frac{1}{2}}V_X}^H
Q=(ΛX−σn2I)−21VXH为白化矩阵,得到白化后的接收信号
Z
\mathbf{Z}
Z:
Z
=
Q
X
=
Q
(
A
S
+
N
)
\mathbf{Z}=\mathbf{QX}=\mathbf{Q(AS+N)}
Z=QX=Q(AS+N)
白化后数据的零时延自相关函数矩阵可以表示为:
分离
首先给出发射信号
S
\mathbf{S}
S和加性噪声
N
\mathbf{N}
N的非零时延
τ
\tau
τ自相关函数矩阵:
其中
Σ
\mathbf{\Sigma}
Σ也表示对角阵。由此可得白化后接收信号
Z
\mathbf{Z}
Z的非零时延
τ
\tau
τ自相关函数矩阵:
记矩阵
U
=
Q
A
Σ
\mathbf{U=QA\Sigma}
U=QAΣ。同时,我们对
R
Z
(
τ
)
\mathbf{R_Z}(\tau)
RZ(τ)进行谱分解可得:
R
Z
(
τ
)
=
V
Z
Λ
Z
V
Z
H
\mathbf{R_Z}(\tau)=\mathbf{V_Z\Lambda_ZV_Z}^H
RZ(τ)=VZΛZVZH
这里是最关键的一步,其他论文里都没指出这一步,有的忽略了,有的压根没提。
联立上面两个式子,矩阵
U
\mathbf{U}
U和矩阵
V
Z
Λ
Z
1
2
\mathbf{V_Z\Lambda_Z}^{\frac{1}{2}}
VZΛZ21可通过酉变换相互转换。不妨令
U
=
V
Z
Λ
Z
1
2
\mathbf{U=V_Z\Lambda_Z}^{\frac{1}{2}}
U=VZΛZ21,则有:
V
Z
=
U
Λ
Z
−
1
2
=
Q
A
Σ
Λ
Z
−
1
2
\mathbf{V_Z=U\Lambda_Z}^{-\frac{1}{2}}=\mathbf{QA\Sigma\Lambda_Z}^{-\frac{1}{2}}
VZ=UΛZ−21=QAΣΛZ−21
V
Z
V
Z
H
=
V
Z
H
V
Z
=
I
\mathbf{V_ZV_Z}^H=\mathbf{V_Z^HV_Z=I}
VZVZH=VZHVZ=I
最后还原得到发射信号的一个估计结果
S
^
\mathbf{\hat{S}}
S^
在最后的结果
S
^
=
Λ
Z
1
2
Σ
−
1
S
+
Λ
Z
1
2
Σ
−
1
N
\mathbf{\hat{S}}=\mathbf{\Lambda_Z}^{\frac{1}{2}}\mathbf{\Sigma}^{-1}\mathbf{S}+\mathbf{\Lambda_Z}^{\frac{1}{2}}\mathbf{\Sigma}^{-1}\mathbf{N}
S^=ΛZ21Σ−1S+ΛZ21Σ−1N中,由于
Λ
Z
1
2
\mathbf{\Lambda_Z}^{\frac{1}{2}}
ΛZ21和
Σ
−
1
\mathbf{\Sigma}^{-1}
Σ−1两个矩阵都为对角阵,因此
Λ
Z
1
2
Σ
−
1
S
\mathbf{\Lambda_Z}^{\frac{1}{2}}\mathbf{\Sigma}^{-1}\mathbf{S}
ΛZ21Σ−1S是矩阵
S
\mathbf{S}
S的一个尺度变换。