主成分分析(PCA)

主成分分析的主要目的是希望用较少的变量去解释原来资料中的大部分变异,将我们手中许多相关性很高的变量转化成彼此相互独立或不相关的变量。实际上是一种降维的方法。

1 基本思想及方法

p个随机变量$X_1,…,X_p$,其线性组合构成一个可能的主成分:$c_1X_1+\cdots+c_pX_p$(说白了就是一个旋转平移的变换)。如果能使$Var(c_1X_1+\cdots+c_pX_p)$达到最大,则能最大程度的保留信息。通常还要加限制:$c_12+\cdots+c_p2=1$,在此约束下求最优解。易见这个解是一个p维单位向量(这样可以构成一个旋转矩阵)。

这样找到一个解的话就获得了一个主成分。然而一个主成分不足以代表原有的p个变量,因此还需要寻找更多个。这些主成分不应该有重叠的信息,统计上的描述就是让两两主成分的协方差为零,几何上就是两两主成分的方向正交。

过程(简洁版):

  1. 去中心化(把坐标原点放在数据中心)

  2. 找坐标系(找到方差最大的方向)

2 主成分估计

详细的证明可以见相关教材,这里写结论。

设有 p 个回归(自)变量,它在第i次试验中的取值为$X_i=(x_{i1},\cdots,x_{ip})^T$,$(i=1,2,\cdots,n)$,可以写成矩阵形式:$X=(X_1,X_2,\cdots,X_n)$.这里假设已经进行了去中心化。

根据协方差矩阵的公式,设其协方差矩阵为$C$,则$C=\frac{X^TX}{n-1}$.

$C$的特征向量就是主成分的方向,特征值就是该主成分的贡献度,也就是上述坐标轴方向的方差。贡献度低的方向若被省去就是降维了。

3 特征值因子的筛选

降维需要一个标准,自然不能说省去就省去。这里一个实用的方法也是经常采用的方式是考虑贡献率,即保持删去的特征向量的特征值$\lambda_{r+1},\lambda_{r+2},\cdots,\lambda_p$的和占所有特征值之和$\Sigma\lambda_i$的$15%$以下。

但是单纯考虑累积贡献率有时是不够的,还需要考虑选择的主成分对原始变量的贡献值,我们用相关系数的平方和来表示,如果选取的主成分为$z_1,z_2,\cdots,z_r$,则它们对原变量$x_i$的贡献值为:

$$
\rho_i=\sum_{j=1}r{r2( z_j,x_i)}
$$

这里括号代表向量内积。有些例子可以说明,单纯考虑贡献率会导致降维降的太多而丢失信息,这里就不附上了。

4 实际应用

在实际的应用中,如果可以分析得到的主成分,赋予其字面意义,会更有说服力。