PCA就是降维保存信息,例如将二维数据保留为一维数据。就是找到一个新的坐标系,这个坐标系的原点落在数据中心,坐标系的方向是往数据分布的方向走。我们需要保存的是新坐标系的原点、新坐标系的角度和新的坐标点。

PCA的目标就是要找到坐标系,使得保留了某些维度的时候,信息损失是最小的(信息保留最多),比如说投影在某个轴上面,数据分布是最分散的。我们要找到数据分布最分散的方向(方差最大),作为主成分(坐标轴)。新坐标系的第一个维度称为主成分一,第二个维度称为主成分二,如果我们找到数据在主成分一上面的投影分布方差是最大的时候,那么说明主成分一它能够保留最多的信息,在这个时候的坐标系就是最好的坐标系。

坐标轴示意图

如何实现PCA?

1.首先是要去中心化,就是把坐标原点放在数据的中心。方法就是把每一个值减去全部值的平均值。移动数据并不会改变数据点彼此之间的相对位置。

2.然后就是找坐标系(找到方差最大的方向)

我们该如何找到方差最大的方向呢?

数据线性变换

如果只是数据对角矩阵。用待变换矩阵左乘它就会得到伸缩之后的坐标,如图所示就是将x轴拉伸2倍长。原来是单位矩阵左乘,那么是让坐标不变,现在相应的扩大几倍。

数据线性变换2

在矩阵运算上面可以想象到,这是逆时针旋转相应度数

转换

我们手上的数据就是我们要降维的数据。可以通过白数据左乘S再左乘R得到。

拉伸和旋转变换有什么作用?

拉伸决定了方差最大的方向是横或者纵向。旋转决定了方差最大的方向的角度是多大。所以我们要求的就是R矩阵

转换2

我们手上的数据D’同样也可以转换回白数据。可以先乘一个R的逆矩阵,它本来是逆时针旋转,取逆就是再顺时针旋转同样的度数。再拉伸,压缩回拉伸的倒数。

怎么求R?协方差矩阵的特征向量就是R

何为协方差矩阵?

什么是协方差

协方差矩阵

白数据x,y不相关,这个时候协方差为0,只剩下对角线,即x、y方差为1就是一个单位矩阵。数据正相关协方差大于0,数据负相关,协方差小于0。

将协方差的公式代入协方差矩阵得到:再提个1/(N-1)

代入协方差矩阵

这里的D是移至原点后的原始数据矩阵

我的想法是C既拉伸又旋转?

手上数据的协方差

协方差的特征向量

R和L矩阵

把特征值放到一起组成L矩阵,把特征向量v1和v2组合到一起成为R

协方差的特征值

旋转回来协方差是L,因为R逆是一个对角矩阵,旋转回来之后x方向和y方向不相关,x方向的方差是a²,y方向的方差是b²,同时又是协方差矩阵的特征值。

如何求解PCA

如何判断PCA拟合度的高低?我们可以通过量化数据在主成分上的投影长度和最小或者数据在投影点到中心点的距离和最大,通常我们选择后者,因为后者更方便。

计算每个主成分的差异率就是把主成分分别的特征值除以全部的特征值加起来,越大越好,代表信息越多

主成分分析的应用

两组数据

样本点去中心化

结果

绘图

原有数据转化为一维数据

PCA步骤

主成分分析的本质就是向量换基。

主成分分析通过对投影距离方差的运用将降维问题转换成了求最值的问题。

主成分分为主成分分析和主成分评价两个方面,分析就是单纯的分析数据是否具有主成分和主成分效果如何,评价就是根据主成分运行的结果直接评价了。

在数模中主成分分析用于评价类的问题,即综合评估

使用的注意要求是:指标之间的相关性比较高,一般需要对数据的相关性或者主成分分析的结果进行分析后,如果效果比较好,再使用主成分分析,如果效果不好,就不要使用主成分分析。

也就是说协方差越大,相关性越高,一般主成分分析相关性大部分变量协方差要大于0.3

主成分说白了就是在评价的时候有很多指标,因为指标太多了,并且各个指标之间相互有影响,为了消除指标之间的影响,单纯从数据的角度寻找各个指标具有公共特征,这些公共的特征就是主成分,也就是常说的第一主成分,第二主成分,第N主成分。具体的第一主成分第二主成分以及累计贡献率(要保证所有主成分累计对原始数据的贡献达到80%,即差异率超80%)是如何计算出的,可以不用掌握,且在比赛的时候也没必要写在论文上,只需要给出主要的结果即可。

主成分分析目的不是用来分类,而是用于综合评价