[ML Notes] PCA:最大可分性
主成分分析(Principal Component Analysis,PCA)通过将样本点投影到一个超平面上来实现降维。理想的超平面应当具有:
- 最大可分性:样本点在这个超平面上的投影能尽可能分开,即最大化投影方差,在投影后保留最多的信息;
- 最近重构性:样本点到这个超平面的距离足够近,即最小化平方误差,通过投影可以最准确地重构出原始样本点。
首先从最大可分性的角度考虑。
给定 m 个样本点 d1,d2,⋯,dm,首先进行中心化,计算 μd=1mm∑i=1di,令 xi=di–μd,此时有
μx=1mm∑i=1xi=0
两个向量的内积表示第一个向量在第二个向量方向上的投影长度。对于样本 xi 和单位方向向量 w,二者的内积
yi=xTiw
表示 xi 在 w 上的投影坐标,要保持最大可分性,即最大化投影方差,相当于找到一个投影方向 w,使得所有样本 x1,x2,⋯,xm 在 w 上投影的方差最大。
由式 (1),可知投影后的均值也为 0,即
μy=1mm∑i=1yi=1mm∑i=1xTiw=(1mm∑i=1xTi)w=0
于是投影后的方差为
D(y)=1mm∑i=1(yi–μy)2=1mm∑i=1y2i=1mm∑i=1(xTiw)2=1mm∑i=1(xTiw)T(xTiw)=1mm∑i=1(wTxixTiw)=wT(1mm∑i=1xixTi)w
注意上式中的 1mm∑i=1xixTi 是样本的协方差矩阵,记为 Σ,则上式可以写为
D=wTΣw
又由 w 为单位方向向量,有 wTw=1,于是最大化投影方差变为一个约束优化问题
maxwwTΣws.t.wTw=1
对式 (5) 构造拉格朗日函数
L(w,λ)=wTΣw+λ(1–wTw)
令 ∇wL=0,可得
∇w(wTΣw)=λ∇w(wTw)
Σw=λw
将式 (7) 代入式 (4),得到
D=wTλw=λ
式 (7) 表明 w 和 λ 分别是协方差矩阵 Σ 的特征向量和特征值,式 (8) 表明特征值 λ 即为投影方差。因此,最大化投影方差就是要找到协方差矩阵 Σ 的最大的特征值,此时的投影方向 w 即为最大特征值对应的特征向量。次佳投影方向位于最佳投影方向的正交空间中,为第二大特征值对应的特征向量,以此类推。
由此得到计算 PCA 的求解方法为,给定样本集 {d1,d2,⋯,dm},低维空间维数 d:
- 对所有样本进行中心化:xi=xi–1mm∑i=1di;
- 计算样本的协方差矩阵 XXT;
- 对协方差矩阵 XXT 进行特征值分解;
- 取最大的 d 个特征值所对应的特征向量 w1,w2,⋯,wd;
由此得到投影矩阵 W=(w1,w2,⋯,wd)。可以通过如下的计算将单个 n 维样本 x 映射到 d 维
z=[wT1xwT2x⋮wTdx]=WTx
基于映射得到的 d 维向量 z,可以重构 n 维向量 x
x′=d∑i=1ziwi=Wz