PCA主成分分析(最大投影方差)

PCA简介:

从n维数据中提取最能代表这组数据的m个向量,也就是对数据进行降维(n->m),提取特征。

目标:

找到一个向量\(\mu\),使n个点在其上的投影的方差最大(投影后的数据越不集中,就说明每个向量彼此之间包含的相似信息越少,从而实现数据降维)

前提假设:

总的数据:

\[A = (x_1, x_2, \cdots , x_n)\]

\(X\)的协方差:

\[C = Cov(X) = \frac{1}{n}\sum_{i=1}^n(x_i-\overline{x})(x_i-\overline{x})^T\]

向量\(\mu\)

\[|\mu| = 1 \Rightarrow \mu^T\mu = 1\]

证明:

易知\(x_i\)\(\mu\)上的投影为\[(x_i-\overline{x})^T\mu\]

因为\((x_i-\overline{x})\)均值为0, 所以记其方差\(J\)

\[\frac{1}{n}\sum_{i=1}^n((x_i-\overline{x})^T\mu)^2\]

又因为上式平方项中为标量,故可以将\(J\)改写为

\[\frac{1}{n}\sum_{i=1}^n((x_i-\overline{x})^T\mu)^T((x_i-\overline{x})^T\mu)\]

化简,得

\[\frac{1}{n}\sum_{i=1}^n\mu^T(x_i-\overline{x})(x_i-\overline{x})^T\mu\]

发现中间两项是协方差,带入,得

\[\mu^TC\mu\]

接下来就是一个在给定约束条件\(\mu^T\mu\) = 1,下的最优化问题,这里使用Lagrange乘数法求解

构造Lagrange函数\[L(\mu, C, \lambda) = \mu^TC\mu + \lambda(1-\mu^T\mu)\]

关于\(\mu\)求偏导,得

\[\frac{\partial J}{\partial \mu} = 2C\mu - 2\lambda\mu\]

令其等于0,得

\[C\mu = \lambda\mu\]

是不是有点眼熟?
没错,\(\lambda\)就是\(C\)的特征值(eigen-value),\(\mu\)就是\(C\)的特征向量(eigen-vector)
因此,这个我们要求的向量\(\mu\)就是\(C\)的特征向量(要m个,就取前m个最大的特征值对应的特征向量)

你可能感兴趣的:(PCA主成分分析(最大投影方差))