主成分分析---PCA

一.PCA(Principal Component Analysis) is what ?
主成分分析是一种特征提取技术,以某种特定的方式组合进行变量输入,进一步保留价值量较大的部分,丢弃不重要的变量!
PCA上场的机会:
降低变量的数目,不需要识别可以完全移除的变量,变量之间相互独立;小编在这里想要重点强调一下PCA方法是一种线性变换,主要用于高维数据的降维。
既然面对的数据被抽象为一组向量,那么下面小编觉着有必要研究一些向量的数学性质。
线性空间的性质:
1.零元素唯一,负元素唯一;
2.设输入这里写图片描述这里写图片描述时,这里写图片描述中的向量组这里写图片描述线性相关的充要条件为该向量组中至少有一个向量可由组中其余向量线性表示
3.向量的内积定义为:这里写图片描述,内积的值也代表线段的长度。即这里写图片描述是向量的模。
4.二维降一维:在二维平面中选择一个方向,将所有数据都投影到这个方向所在直线上。
5.方差:投影后尽可能的分散程度;寻找一维基使所有数据变换后,使得方差最大
6.协方差:相关性的两个字段不是完全独立,必然存在重复表示的信息这里写图片描述,可以看到,在字段均值为0的情况下,两个字段的协方差表示为其内积除以元素数m。当协方差为0时,表示两个字段完全独立,因此为了让协方差为0,我们在选择变换基时应尽量与其正交。
因此降维的主要优化目标进一步转变为了:将一组N维向量降为K维,就是选择K个单位正交基,使得变换后的各字段的协方差为0,方差尽量的最大化。
7.协方差矩阵:PCA的终极目标在某种程度上来说就是建立方差与协方差的关系,因为通过矩阵将两者统一表示,经过观察发现,两者可以被表示成内积的形式。
这里写图片描述
然后用X再乘以自身的转置:
这里写图片描述
此时会惊奇的发现!将矩阵的每个元素除以m,对角线上的两个元素分别是方差和协方差。
9.协方差矩阵对角化:即将对角线以外的其他元素化为0,并在对角线上将元素按大小从上到下进行排序。设P为一组基按行组成的矩阵,设Y=PX,即将Y带入7中的X,则可以求得最优变换基P。P是协方差矩阵的特征向量正交化后按行排列出的矩阵,其中每一行都是一个特征向量。如果设P按照特征值的从大到小,将特征向量从上到下排列,则用P的前K行组成的矩阵乘以原始数据矩阵X,就得到了我们需要的降维后的数据矩阵Y。
下面给出算法:
设有m个n维的数据:
setp1:将原始数据按列组成n行m列矩阵X
step2:将X的每一行进行零均值化,即减去这一行的均值
step3:求出协方差矩阵
step4:求出协方差矩阵的特征值及对应的特征向量
step5:将特征向量按对应特征值大小从上到下按行排列成矩阵
**step6:**Y=PX即为降维到k维后的数据

猜你喜欢

转载自blog.csdn.net/zx_zhang01/article/details/82056987