您的位置:首页 > 其它

Karhunen-Loeve Transform (KLT) 原理及PCA应用

2015-07-19 02:53 351 查看
Karhunen-Loeve Transform(KLT)是一种数据变换与分析方式,常用于数据压缩和PCA降维。

1. KLT是什么变换,KLT的目的是什么?

KLT是对向量x做的一个正交变换y=Φx,目的是变换到y后去除数据相关性。

PS:其中,Φ是x特征向量组成的矩阵,满足ΦTΦ=I,当x都是实数时,Φ是正交矩阵。

2. 为什么说KLT可以去除数据相关性?

用my表示向量y的平均值,y的协方差矩阵记为Σy,通过变换 y=ΦTx,有





写成矩阵形式:



由此可见,做了KLT变换之后呢,Σy成为了对角阵,也就是对于任意i≠j,有cov(yi,yj)=0;i=j有cov(yi,yj)=λi,所以说去除了数据相关性。而且,yi的方差与x协方差矩阵的第i个特征值相等,即



3. 如何将KLT用于PCA?

PCA降维可以用于压缩(详见主成分分析的介绍),这里做一个概要:

假设待压缩数据为N维向量x,通过KLT变换压缩成M维信号y(M<N)

找到x的均值Mx和协方差矩阵 Σx
计算 Σx的特征值λi和特征向量φi,并按照λi递减(从大到小)的顺序重新组合,i∈[0,N-1]
根据能量比

>=threshold 进行m个主成分的选择
将M个最大特征值对应的特征向量重新组合成N*M的特征向量矩阵 Φm
做KLT变换 y = ΦmTx,形成压缩向量y



逆KLT变换恢复x,x = Φmy



Reference:

1. http://fourier.eng.hmc.edu/e161/lectures/klt/node4.html

2. http://fourier.eng.hmc.edu/e161/lectures/klt/node3.html
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: