PCA
当处理高维数据时,需要面临降维,进行特征抽取,PCA是特征抽取的主要方法之一,特征抽取即利用映射的方法,将高维度的样本映射至低维度。PCA适用于非监督的不带标签的样本降维,特别是小样本问题。广义认为,这类样本属性之间的相关性很大,通过映射,将高维样本向量映射成属性不相关的样本向量。实际上,大的特征值表征这个映射向量——或者映射方向,能够使样本在映射后,具有最大的方差。样本在这个方向最发散。通常情况下,有用信息具有较大的方差,噪声有较小的方差。
PCA推导
设有数据集X=[x1,x2,...,xN]∈Rd×N
样本均值μ=1N∑Ni=1xi,xi←xi−μ,设中心化后的样本集为X=[x1,x2,...,xN]∈Rd×N
PCA的目的是为了寻找一个投影方向,使数据集投影到新方向上时尽量散开,即有最大方差。
设投影方向为v(是
(设||v||=1,vTxi是一个数值,表示向量xi在v方向上的投影长度)
则样本在方向
新坐标的方差:σ2=1N∑Ni=1(vTxi−0)2=1N∑Ni=1(vTxi)(vTxi)=1N∑Ni=1(vTxi)(vTxi)T=1N∑Ni=1vTxixTiv=1NvT∑Ni=1xixTiv(一个数)
令C=
则σ2=1NvTCv
原问题变为max σ2=vTCv s.t ||v||2=vTv=1
用拉格朗日乘数法:L(v,λ)=vTCv-λ(vTv−1)
∂L∂v=2Cv−2λv=0 ⇒ Cv=λv
∂L∂v=1−vTv=0 ⇒ vTv=1
则σ2=vTCv=vTλv=λvTv=λ
∴ 所求方向v即为样本协方差矩阵
若要将样本降到k维,则选出样本协方差矩阵
PCA步骤
1.特征中心化,即每个样本点减去均值
2.计算样本协方差矩阵
3.计算协方差矩阵的特征值和特征向量
4.选取若干个最大的特征值对应的特征向量作为投影矩阵,将原高维样本映射到低维空间
KPCA
PCA针对线性的情况效果比较好,但对于非线性的情况效果并不理想,为了更好的处理非线性数据,引入非线性映射函数ϕ,将原空间中的数据映射到高维空间,在这个高维空间中线性不可分的样本变得线性可分了,接着可再运用PCA思想了。
KPCA推导
设有数据集X=[x1,x2,...,xN]∈Rd×N,设非线性映射函数ϕ,ϕ:Rd→FD,D≫d
将样本空间映射到高维特征空间得Φ(X)=[ϕ(x1),ϕ(x2),...,ϕ(xN)]∈RD×N
假设Φ(X)的均值为0,即1N∑Ni=1ϕ(xi)=0
设投影方向为V(是一个
则问题转化为max VTΦ(X)Φ(X)TV s.t ||V||2=VTV=1
我们现在的问题是要求Φ(X)Φ(X)T(D×D)的最大特征值对应的单位特征向量,但Φ(X)是未知的,要怎样解决现在的问题呢?
注意到核矩阵K=⎡⎣⎢⎢⎢ϕ(x1)Tϕ(x1)⋮ϕ(xN)Tϕ(x1)⋯⋱⋯ϕ(x1)Tϕ(xN)⋮ϕ(xN)Tϕ(xN)⎤⎦⎥⎥⎥
=⎡⎣⎢⎢⎢⎢⎢ϕ(x1)Tϕ(x2)T⋮ϕ(xN)T⎤⎦⎥⎥⎥⎥⎥[ϕ(x1)ϕ(x2)⋯ϕ(xN)]=Φ(X)TΦ(X)(N×N)
设Kξ=λξ,即Φ(X)TΦ(X)ξ=λξ(设ξ为单位特征向量)
两边同时左乘Φ(X)得Φ(X)Φ(X)TΦ(X)ξ=λΦ(X)ξ
即(Φ(X)Φ(X)T)Φ(X)ξ=λΦ(X)ξ
则所要求的投影方向为V=
由于Φ(X)是未知的,故投影方向是求不出的。
Φ(X)的投影坐标为VTΦ(X)=ξTΦ(X)TΦ(X)λ√=ξTKλ√=ξTKTλ√=(Kξ)Tλ√=λξTλ√=λ√ξT. (即Φ(X)中每个向量的投影坐标的第一个分量即第一主成分)
若要将样本降到k维,则选出样本协方差矩阵
思考
上面假设Φ(X)的均值为0,若Φ(X)的均值不为0,则首先需要对Φ(X)进行中心化处理,令中心化处理后的样本为Ψ(X)=[ψ(x1),ψ(x2),...,ψ(xN)],其中ψ(xi)=ϕ(xi)-1N∑Nk=1ϕ(xk)
问题转化为max V~TΨ(X)Ψ(X)TV~ s.t ||V~||2=V~TV~=1
和上面一样,这个问题的解是通过求K~=Ψ(X)TΨ(X)的特征值特征向量得到的。
下面来求K~ij:
K~ij=ψ(xi)Tψ(xj)
=(ϕ(xi)−1N∑Nk=1ϕ(xk))T(ϕ(xj)-1N∑Nl=1ϕ(xl))
=ϕ(xi)Tϕ(xj)-1N∑Nk=1ϕ(xk)Tϕ(xj)-1N∑Nl=1ϕ(xi)Tϕ(xl)+1N2∑Nk=1∑Nl=1ϕ(xk)Tϕ(xl)
=Kij-1N∑Ni=1Kij-1N∑Nj=1Kij+1N2∑Ni=1∑Nj=1Kij
设I是每个元素都为1的
即
IK的第j列每个元素为
即
IKI的每个元素为K的所有元素之和,即
∴ K~=K−1NIK−1NKI+1N2IKI=(E−1NI)K(E−1NI)
其中E为
KPCA步骤
1.利用核方程K(x,y)计算矩阵K
2.求矩阵
3.选取几个最大特征值对应的特征向量带入公式求解投影坐标
常见的核函数
线性核: k(x,y)=xTy+c
多项式核:k(x,y)=(axTy+c)d
高斯核:k(x,y)=exp(−||x−y||22σ2)
本文详细介绍了PCA(主成分分析)及其非线性扩展KPCA(核主成分分析)的基本原理与数学推导过程。PCA是一种常用的降维方法,特别适用于非监督学习中的小样本问题。而KPCA通过引入核技巧处理非线性问题,进一步扩大了PCA的应用范围。
1557

被折叠的 条评论
为什么被折叠?



