PCA原理总结

来源:互联网 发布:大数据与量化投资 编辑:程序博客网 时间:2024/06/06 08:29

本来打算查查资料总结一下PCA的原理,但是发现关于PCA介绍的神文一篇,颇有深入浅出的感觉,介绍的实在详细,我还是不献丑了。但是,单纯转载过来实在没什么技术性,而且也有点辜负当初那位大神的费心总结,所以认真拜读之后,整理原文介绍PCA的思路如下,希望能够锦上添花,方便读者理解。  原文地址:点击打开链接

1. 先说明数据的维度可能是彼此相关的,当维度很高时,是否可以降维,并且使得信息的损失最小。在这里作者举例男女性别以及销售情况,来说明降维的动机和可行性。

2. 解释向量內积的物理含义,即,当向量B的模为1时,向量A和向量B的內积等于向量A在B所在直线上的投影的矢量距离。  注:矢量距离可为负,此时两向量夹角为钝角;标量距离只能为正。

3. 引入的定义,以及当基向量变化时,新的坐标就是原向量在新的基向量上的投影,即矢量距离,也就是原向量和单位基向量的內积。 注:基的确定,是一切向量坐标定位的前提。另外点明,只要不是在一条直线上的两向量,都可以成为一组基向量,但是一般希望是正交的。

4.推广单个向量在二维空间基变换时的计算方法,为多个向量在更高维度同时发生基变换的矩阵计算模式。而这个矩阵相乘的模式就可以用了做降维的变换,也表明该矩阵相乘(降维变换)的一种物理解释为:两个矩阵相乘的意义是将右边矩阵中的每一列列向量变换到左边矩阵中每一行行向量为基所表示的空间中去。

注:矩阵相乘可以看做一种线性的变换。

5.基向量的数量等于变换后样本的维数,那么如何挑选最优的基向量。在此以二维降为一维为例说明,我们首先希望映射之后,单一维度上样本的方差尽可能大,这样更加离散,才有区分性,如果都聚在一起,那么这个维度无区分性,蕴含信息少。  另外,又指出当降维不是到一维时,单纯的选择让方差最大的投影只会产生一个基向量方向,所以我们有引入一个限制条件,希望基向量之间不相关,也就是互相垂直。两个维度的相关性数学上用协方差表示,协方差为0,则表示完全独立。因此,第二个基向量在第一个基向量的正交方向上选取。

那么就得到最终的优化目标:将一组N维向量降为K维(K大于0,小于N),其目标是选择K个单位(模为1)正交基,使得原始数据变换到这组基上后,各字段两两间协方差为0,而字段的方差则尽可能大(在正交的约束下,取最大的K个方差)。
注:此处需要原始数据经过中心化。

6.指出目标函数与维度的方差和协方差有关,提出协方差矩阵是解决问题的关键。

7.发现变换后样本集的协方差矩阵和之前的协方差矩阵与基向量矩阵的关系。 为了使得变换后的协方差矩阵对角化,即任意两维度之间协方差为0,对角线上为新维度的方差,最后只需要保留最大的K项。目标问题转化为 协方差矩阵的对角化问题

注:协方差矩阵是实对称矩阵,而实对称矩阵在线性代数上有着一些很好的特性,其对角化方法也早已被数学家提出。特征向量即基向量,对应的特征值为新的维度的方差,越大当然越好。最后选取K个特征值最大的特征向量作为基向量。  此时既保证了变换后方差最大,也保证了任意新维度之间不相关。

8.PCA的特性(缺陷):
  1. PCA可以让新产生的维度不相关,解除数据维度之间的线性相关,但是对于高阶相关性就不行了。此时可以考虑kernel PCA,通过核方法把维度的非线性相关先转化为线性相关,然后再PCA。
  2. PCA最后得到的是正交的基向量方向,当在非正交的几个方向上存在较大方差时,PCA效果不好。因为我们的目标就是希望得到正交的基向量,可以防止维度相关产生的冗余信息。但是当非正交方向存在较大方差时,此时还强制要求基向量正交,势必导致部分信息的流失。
  3. PCA是无参数技术,数据集固定,结果唯一稳定,便于实现和使用。但是灵活性不够,无主观参数引入,无法个性化优化。

说到这里,相信读者对PCA降维的原理已经有所理解了,然后再给出一个涉及到实际应用的链接点击打开链接,其中提出的在PCA之后才进行多元线性回归分析是很好的一种用法,可以更好地明白PCA的具体应用。

1 0
原创粉丝点击