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个最大的特征值对应的特征向量)

posted @ 2019-11-20 00:03  香风智乃俺の嫁  阅读(1297)  评论(0)    收藏  举报