《文章翻译》PCA&SVD

目录

Principle Component Analysis && Singular Value Decomposition

一. Intuition of PCA

1.1 去掉多余的特征

假设我们有房子的这些信息:价格(千美元)、面积、层数、户型。

《文章翻译》PCA&SVD

房子包含了四维的信息,我们无法在一幅图像中直观的显示出来。然而,如果你仔细的观察特征之间的联系,你将会注意到不是所有的特征都是同等重要的。

例如,你可以通过房子的层数去识别房子的价格(或对应哪个房子)吗?房子的层数是否帮助我们区分是哪个房子?房子的层数几乎相同,他们的方差很小,\(\sigma^2=0.2\) 所以房子的层数不是非常有用。那房子的户型呢?他们值变化也不是很大,但是他们的方差却很大,\(\sigma^2=127\),因此房子的户型可以很好的区别是哪个房子。

因此我们可以做一些事尽量的发掘特征,在不损失精度的情况下。目前,我们学习了各自的特征。那特征之间的相互联系是什么?如果你仔细看了上图1-1的特征,你会发现房子的价格粗略的等于房子面积的两倍。这是非常有用的信息,我们可以使用其中一个特征来取代代替另一个特征。这样两个特征之间的联系称为协方差。协方差越大,表明特征之间的相关性越强,也就是数据的冗余性很大。因此可以进行降维处理。

从之前的讨论可以明显的看出:

  • 特征高方差是好事,代表更多的信息
  • 特征之间高协方差是坏事,表明特征之间很多冗余

这就是PCA的目的:使得每个特征的方差都很大,使得特征之间的协方差都很小。当前我们无法用眼睛直观的感受,下文会详细描述。

1.2 魔幻展示

我们对PCA女士进行了一个简单采访-:

记者:请问您认为最完美的数据是什么样的?

PCA:下图所示

《文章翻译》PCA&SVD

这意味着-----数据可以降低到一个维度上。观测:\(x_1\)方向的方差比\(x_2\)方向的方差大很多,也就等于去除\(x_2\)方向的数据,不会破坏很多的数据信息。此外,\(x_1\)方向的数据是递增的,完全没有依靠\(x_2\)的数据,也就等于\(x_1/x_2\)的协方差很小。为什么PCA会觉得这样的数据很完美,因为她只需进行这样的操作:

《文章翻译》PCA&SVD

《文章翻译》PCA&SVD

明白怎么进行的处理很重要,\(x_1\)的数据比\(x_2\)的数据更重要,所以我们去除\(x_2\)的数据。也可以表达为,把数据像\(x_1\)进行投影。二维数据使用一维数据代替。

1.3 难例图解

记者:那您觉得什么的数据不是很完美呢?数据像什么样子?

PCA:每个东西都是完美的,只要你进行一些变换即可。像下面这幅图一样:

《文章翻译》PCA&SVD

PCA:上面的图有点困难,你觉得呢?尝试将头转动一下

《文章翻译》PCA&SVD

将图转动45°之后,现在的图也是将近完美的。

2. 概念介绍

3. PCA操作

4. SVD操作

上一篇:矩阵分解之:主成分分析(PCA)


下一篇:python – 添加图例到散点图(PCA)