08 主成分分析(进阶版)

08 主成分分析(进阶版)

标签:机器学习与数据挖掘

1.主成分定义

  设随机向量XT=[X1,X2,...,XP]\mathbf{X}^{\text{T}}=\left[ X_1,X_2,...,X_P \right] 有协方差矩阵乏,其特征值$\lambda _1\geqslant \lambda _2\geqslant …\geqslant \lambda _p\geqslant 0 $。
  考虑线性组合:
Y1=a1X=a11X1+a12X2+...+a1pXpY2=a2X=a21X1+a22X2+...+a2pXp...Yp=apX=ap1X1+ap2X2+...+appXp Y_1=\boldsymbol{a}_1'\boldsymbol{X}=a_{11}X_1+a_{12}X_2+...+a_{1p}X_p \\ Y_2=\boldsymbol{a}_2'\boldsymbol{X}=a_{21}X_1+a_{22}X_2+...+a_{2p}X_p \\ ... \\ Y_p=\boldsymbol{a}_p'\boldsymbol{X}=a_{p1}X_1+a_{p2}X_2+...+a_{pp}X_p
则,我们可以得到:
Var(Yi)=aiΣai  i=1,2,...,pCov(Yi,Yk)=aiΣak  i,k=1,2,...,p Var\left( Y_i \right) =\boldsymbol{a}_{\boldsymbol{i}}'\boldsymbol{\varSigma a}_{\boldsymbol{i}}\,\, i=\text{1,2,...,}p \\ Cov\left( Y_i,Y_k \right) =\boldsymbol{a}_{\boldsymbol{i}}'\boldsymbol{\varSigma a}_{\boldsymbol{k}}\,\, i,k=\text{1,2,...,}p
上式的那些Y1Y_1Y2Y_2,…,YpY_p,它们使得方差尽可能的大
第一主成分是最大方差的显著性组合,即使得$Var\left( Y_i \right) 最大化。显然,Var\left( Y_i \right) 会因为\boldsymbol{a_1}$乘以某一个常数而增大。为消除这种不确定性,一个方便的方法是值关注有单位长度的系数向量。我们因此定义:
第一主成分 == 线性组合a1X\boldsymbol{a}_{\boldsymbol{1}}'\boldsymbol{X},在a1a1=1\boldsymbol{a}_{\boldsymbol{1}}'\boldsymbol{a}_{\boldsymbol{1}}=1时,它使Var(a1X)=0Var\left( \boldsymbol{a}_1'\boldsymbol{X} \right) =0最大。

第二主成分 == 线性组合a2X\boldsymbol{a}_{\boldsymbol{2}}'\boldsymbol{X},在a2a2=1\boldsymbol{a}_{\boldsymbol{2}}'\boldsymbol{a}_{\boldsymbol{2}}=1Cov(aiX,akX)=0Cov\left( \boldsymbol{a}_{\boldsymbol{i}}'\boldsymbol{X,a}_{\boldsymbol{k}}'\boldsymbol{X} \right) =0时,它使Var(a2X)Var\left( \boldsymbol{a}_2'\boldsymbol{X} \right)最大。

ii主成分==线性组合aiX\boldsymbol{a}_{\boldsymbol{i}}'\boldsymbol{X},和aiai=1\boldsymbol{a}_{\boldsymbol{i}}'\boldsymbol{a}_{\boldsymbol{i}}=1Cov(aiX,akX)=0(k<i)Cov\left( \boldsymbol{a}_{\boldsymbol{i}}'\boldsymbol{X,a}_{\boldsymbol{k}}'\boldsymbol{X} \right) =0 (k < i)时,它使Var(aiX)Var\left( \boldsymbol{a}_i'\boldsymbol{X} \right)最大。

2.重要结论:

08 主成分分析(进阶版)

08 主成分分析(进阶版)
用语言来描述结论8.2:
总体总方差=σ11+σ22+...+σpp=λ1+λ2+...+λp \text{总体总方差}=\sigma _{11}+\sigma _{22}+...+\sigma _{\begin{array}{c} pp\\ \end{array}} \\ =\lambda _1+\lambda _2+...+\lambda _p

08 主成分分析(进阶版)
推导:
ρYi,Xi=Cov(Yi,Xk)Var(Yi)Var(Xk)=λieikλi  σkk=eik  λiσkk \rho _{Y_i,X_i}=\frac{Cov\left( Y_i,X_k \right)}{\sqrt{Var\left( Y_i \right)}\sqrt{Var\left( X_k \right)}}=\frac{\lambda _ie_{ik}}{\sqrt{\lambda _i}\,\,\sqrt{\sigma _{kk}}}=\frac{e_{ik}\,\,\sqrt{\lambda _i}}{\sqrt{\sigma _{kk}}}
理解:这其实是按照相关系数的算法,算出的东西叫做信息量。
08 主成分分析(进阶版)

6.解释

  首先,我们知道对一个矩阵的谱分解意味着对这个所在的n维图形找出它的特征。若是2维的一个椭圆,即是找出它的长短轴,而实际上,主成分同样。考虑一个二元正态随机向量:
08 主成分分析(进阶版)
  我们可以看到,对于此图形,我们对其做主成分分析(也是谱分解)实际的操作就是找出其长短轴,也就是它的特征,并以此为基础进行变换。对于p维而已,减少其轴的数量也就是减少其维度。
  当然,我们现在针对一下这个2维数据,可以发现其长轴方向就是其方差最大化的地方。

7.代码实现

R的话,参考本博客 R语言 里面 第四站的内容。