Processing math: 100%

[ML Notes] PCA:最大可分性

  主成分分析(Principal Component Analysis,PCA)通过将样本点投影到一个超平面上来实现降维。理想的超平面应当具有:

  • 最大可分性:样本点在这个超平面上的投影能尽可能分开,即最大化投影方差,在投影后保留最多的信息;
  • 最近重构性:样本点到这个超平面的距离足够近,即最小化平方误差,通过投影可以最准确地重构出原始样本点。

  首先从最大可分性的角度考虑。

  给定 m 个样本点 d1,d2,,dm,首先进行中心化,计算 μd=1mmi=1di,令 xi=diμd,此时有

μx=1mmi=1xi=0

  两个向量的内积表示第一个向量在第二个向量方向上的投影长度。对于样本 xi 和单位方向向量 w,二者的内积

yi=xTiw

表示 xiw 上的投影坐标,要保持最大可分性,即最大化投影方差,相当于找到一个投影方向 w,使得所有样本 x1,x2,,xmw 上投影的方差最大。

  由式 (1),可知投影后的均值也为 0,即

μy=1mmi=1yi=1mmi=1xTiw=(1mmi=1xTi)w=0

于是投影后的方差为

D(y)=1mmi=1(yiμy)2=1mmi=1y2i=1mmi=1(xTiw)2=1mmi=1(xTiw)T(xTiw)=1mmi=1(wTxixTiw)=wT(1mmi=1xixTi)w

注意上式中的 1mmi=1xixTi 是样本的协方差矩阵,记为 Σ,则上式可以写为

D=wTΣw

又由 w 为单位方向向量,有 wTw=1,于是最大化投影方差变为一个约束优化问题

maxwwTΣws.t.wTw=1

  对式 (5) 构造拉格朗日函数

L(w,λ)=wTΣw+λ(1wTw)

wL=0,可得

w(wTΣw)=λw(wTw)

Σw=λw

将式 (7) 代入式 (4),得到

D=wTλw=λ

  式 (7) 表明 wλ 分别是协方差矩阵 Σ 的特征向量和特征值,式 (8) 表明特征值 λ 即为投影方差。因此,最大化投影方差就是要找到协方差矩阵 Σ 的最大的特征值,此时的投影方向 w 即为最大特征值对应的特征向量。次佳投影方向位于最佳投影方向的正交空间中,为第二大特征值对应的特征向量,以此类推。

  由此得到计算 PCA 的求解方法为,给定样本集 {d1,d2,,dm},低维空间维数 d

  1. 对所有样本进行中心化:xi=xi1mmi=1di
  2. 计算样本的协方差矩阵 XXT
  3. 对协方差矩阵 XXT 进行特征值分解;
  4. 取最大的 d 个特征值所对应的特征向量 w1,w2,,wd

由此得到投影矩阵 W=(w1,w2,,wd)。可以通过如下的计算将单个 n 维样本 x 映射到 d

z=[wT1xwT2xwTdx]=WTx

基于映射得到的 d 维向量 z,可以重构 n 维向量 x

x=di=1ziwi=Wz