Karhunen-Loeve 展开理论详解及数值计算验证
阵列协方差矩阵
K-L变换
前言
\;\;\;\;\; Karhunen-Loeve 展开理论揭露了零均值平稳随机过程构成的随机向量为可以表示为协方差矩阵的归一化特征向量的线性组合。本文将介绍Karhunen-Loeve 展开理论及其证明,并通过MATLAB数值计算验证该理论。
提示:以下是本篇文章正文内容,尊重版权,引用请附上链接。
一、Karhunen-Loeve理论
\;\;\;\;\;
设零均值平稳随机过程
u
(
n
)
\boldsymbol u(n)
u(n) 构成的
M
M
M 维随机向量为
u
(
n
)
\boldsymbol u(n)
u(n),相应的相关矩阵为
R
\boldsymbol R
R,则向量
u
(
n
)
\boldsymbol u(n)
u(n) 可以表示为
R
\boldsymbol R
R 的归一化特征向量
q
1
,
q
2
,
⋯
,
q
M
\boldsymbol q_1,\boldsymbol q_2,\cdots,\boldsymbol q_M
q1,q2,⋯,qM 的线性组合,即
u
(
n
)
=
∑
i
=
1
M
c
i
q
i
\boldsymbol u(n)=\sum_{i=1}^{M}c_i\boldsymbol q_i \quad
u(n)=i=1∑Mciqi 上式称为
u
(
n
)
\boldsymbol u(n)
u(n) 的 Karhunen-Loeve 展开式。式中,展开式的系数
c
i
c_i
ci 是由内积
c
i
=
q
i
H
u
(
n
)
,
i
=
1
,
2
,
⋯
,
M
c_i=\boldsymbol q_i^H\boldsymbol u(n), i=1,2,\cdots,M \quad
ci=qiHu(n),i=1,2,⋯,M 定义的随机变量,且有
E
{
c
i
}
=
0
E\{c_i\}=0 \quad
E{ci}=0
E
{
c
i
c
i
∗
}
=
{
λ
i
,
i
=
l
0
,
i
≠
l
E\{c_ic_i^*\}=\begin{cases}\lambda_i, & i=l\\0, & i\ne l\end{cases} \quad
E{cici∗}={λi,0,i=li=l
这两个求期望的式子说明了
M
M
M 个展开式的系数是互不相关的。下面给出该理论的证明:
\;\;\;\;\;
对上面第一个式子两边左乘
q
i
H
\boldsymbol q_i^{H}
qiH,有
q
i
H
u
(
n
)
=
q
i
H
∑
k
=
1
M
c
k
q
k
=
∑
k
=
1
M
c
k
q
i
H
q
k
i
=
1
,
2
,
.
.
.
,
M
\boldsymbol q_i^H\boldsymbol u(n)=\boldsymbol q_i^H \sum_{k=1}^M c_k \boldsymbol q_k = \sum_{k=1}^M c_k \boldsymbol q_i^H \boldsymbol q_k \;\;\;\; i=1,2,...,M
qiHu(n)=qiHk=1∑Mckqk=k=1∑MckqiHqki=1,2,...,M 因为每个特征向量是相互正交的,即
q
i
H
q
j
=
{
1
,
i
=
j
0
,
i
≠
j
\boldsymbol{q}_i^\mathrm{H}\boldsymbol{q}_j= \begin{cases} 1, & i=j \\ 0, & i\neq j & \end{cases}
qiHqj={1,0,i=ji=j 所以可得
c
i
=
q
i
H
u
(
n
)
i
=
1
,
2
,
.
.
.
,
M
c_i=\boldsymbol q_i^H\boldsymbol u(n)\;\;\;\; i=1,2,...,M
ci=qiHu(n)i=1,2,...,M
因为随机过程
u
(
n
)
\boldsymbol u(n)
u(n)的均值为零,所以,展开式系数
c
i
c_i
ci 的均值也为零,而
E
{
c
i
c
l
∗
}
=
E
{
q
i
H
u
(
n
)
[
q
l
H
u
(
n
)
]
∗
}
{E}\left\{{c}_{i} {c}_{l}^{*}\right\}={E}\left\{\boldsymbol{q}_{i}^{\mathrm{H}} \boldsymbol{u}(n)\left[\boldsymbol{q}_{l}^{\mathrm{H}} \boldsymbol{u}(n)\right]^{*}\right\}
E{cicl∗}=E{qiHu(n)[qlHu(n)]∗}
=
E
{
q
i
H
u
(
n
)
q
l
T
u
∗
(
n
)
}
={E}\left\{\boldsymbol{q}_{i}^{\mathrm{H}} \boldsymbol{u}(n) \boldsymbol{q}_{l}^{\mathrm{T}} \boldsymbol{u}^{*}(n)\right\}
=E{qiHu(n)qlTu∗(n)}
=
E
{
q
i
H
u
(
n
)
u
H
(
n
)
q
l
}
={E}\left\{\boldsymbol{q}_{i}^{\mathrm{H}} \boldsymbol{u}(n) \boldsymbol{u}^{\mathrm{H}}(n) \boldsymbol{q}_{l}\right\}
=E{qiHu(n)uH(n)ql}
=
q
i
H
E
{
u
(
n
)
u
H
(
n
)
}
q
l
=\boldsymbol{q}_{i}^{\mathrm{H}} {E}\left\{\boldsymbol{u}(n) \boldsymbol{u}^{\mathrm{H}}(n)\right\} \boldsymbol{q}_{l}
=qiHE{u(n)uH(n)}ql
=
q
i
H
R
q
l
=\boldsymbol{q}_{i}^{\mathrm{H}} \boldsymbol{R} \boldsymbol{q}_{l}
=qiHRql
=
q
i
H
(
Q
Λ
Q
H
)
q
l
=\boldsymbol{q}_{i}^{\mathrm{H}} (\boldsymbol Q \boldsymbol \Lambda \boldsymbol Q^H) \boldsymbol{q}_{l}
=qiH(QΛQH)ql
=
q
i
H
(
∑
k
=
1
M
λ
k
q
k
q
k
H
)
q
l
=\boldsymbol{q}_{i}^{\mathrm{H}} \left(\sum_{k=1}^{M}\lambda_k\mathbf{q}_k\mathbf{q}_k^\mathrm{H}\right)\mathbf{q}_l
=qiH(k=1∑MλkqkqkH)ql
=
∑
k
=
1
M
λ
k
(
q
i
H
q
k
)
(
q
k
H
q
l
)
=\sum_{k=1}^{M}\lambda_k\left(\mathbf{q}_i^\mathrm{H}\mathbf{q}_k\right)\left(\mathbf{q}_k^\mathrm{H}\mathbf{q}_l\right)
=k=1∑Mλk(qiHqk)(qkHql) 还是因为每个特征向量是相互正交的,所以可得
E
{
c
i
c
l
∗
}
=
{
λ
i
,
i
=
l
0
,
i
≠
l
{E}\left\{c_i c_l^*\right\}=\begin{cases}\lambda_i,&i=l\\0,&i\ne l\end{cases}
E{cicl∗}={λi,0,i=li=l 即
M
M
M个展开系数
c
i
(
i
=
1
,
2
,
⋯
,
M
)
c_i(i=1,2,\cdots,M)
ci(i=1,2,⋯,M)是互不相关的。
二、MATLAB数值计算验证
X=[0.380188080394221 - 4.80840311889913i 9.01551306016066 + 0.474820176721600i 2.53030874185729 + 5.06631990869671i -9.57942898970697 + 0.207798507181289i;
-2.94127326680851 + 3.04821010362689i -4.63345556903917 - 8.74361015253802i 6.19631350044581 - 1.26319637948518i 4.22597245751495 + 8.50562221561771i;
2.02429128417927 + 3.89703975446236i -5.70306616729806 + 7.24328167972610i -4.57605142647674 - 2.38671650483973i 6.71173689323794 - 7.12184092779286i;
1.61341350166245 - 3.55712443803114i 8.72723450691701 + 3.01639248844176i 1.14225006315341 + 4.34466566820764i -9.89689368176315 - 2.96251859167862i]
Rx=X*X'/4 % 估计协方差矩阵
[evector,evalue]=eig(Rx); % 特征值分解
u=X(:,1)
ci=evector'*u;
evector*ci
运行以上代码得到下图所示结果:
可见u和ans的结果一模一样,成功验证了Karhunen-Loeve 展开理论。
总结
\;\;\;\;\; 以上就是今天要讲的内容,本文介绍了Karhunen-Loeve 展开理论及其证明,并通过MATLAB数值计算验证了该理论。