PCA(Principal Component Analysis)是一种常用的数据分析方法。PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,广泛应用于数据降维度。
PCA-最直观认识
首先,让我们通过一个生活中的例子,告诉你PCA的精髓!
请看下面这张漫画,你发现是哪位明星了吗?
猜猜漫画画的是谁?
很明显,就是赵薇!其实这张漫画和赵薇本人并不完全像。但是,大部分人却能够轻易的联系到赵薇。
这是为什么呢?因为你抓住了这张图片中人数的主要特征,就是大眼睛。而演员赵薇本人最具辨识度的特征也就是这个大眼睛了。
其实你在记人脸的时候,并没有记住脸上的所有特征,而是选择主要特征进行记忆。
赵薇本人
你根本不知道赵薇有多少根睫毛吧!!!因为睫毛这种东西,基本不是人脸上的主要特征。或者说,睫毛的变异程度是比较小的,想象一下睫毛长度在人群中的方差大概是多少,不会太大。而眼睛、嘴巴这些就不一样了。所以我们用五官端正来形容一个人长得不错,因为五官就是人脸的五个主要特征。
那么,从这个例子出发,我们来看看PCA是什么。
统计分析时(就像我们研究人脸时),变量个数太多就会增加研究复杂性(数睫毛、数毛孔,这种细节对于判断一个人长得好不好看的帮助比较小,而且浪费时间)。根据实际需要从中可以取出几个较少的综合变量(把五官挑出来)尽可能多地反映原来变量的信息的统计方法叫做主成分分析或称主分量分析,是用来降维的一种方法。
定义:利用正交变换来对一系列可能相关的变量的观测值进行线性变换,从而投影为一系列线性不相关变量的值,这些不相关变量称为主成分(Principal Components)。
理论基础:最大方差理论
在信号处理中认为信号具有较大的方差,噪声有较小的方差,信噪比就是信号与噪声的方差比,越大越好。
PCA就是找出数据里最主要的方面(信号),用数据里最主要的方面来代替原始数据(去掉噪声)。通过这种方法,既能够减少数据集的维数,也能保持数据集中的对方差贡献最大的特征。
从黑色坐标轴,到红色坐标轴,图中数据经过了从原始空间(黑色坐标系)到新空间(红色坐标系)的转换,联系到数学中的线性代数,PCA的转化过程可以视作对原始数据进行线性变换。
使得数据变换到一个新的坐标系统后,数据在第一个坐标(称为第一主成分)上投影的方差最大,在第二个坐标(第二主成分)上投影的方差第二大,依次类推。
步骤
PCA方法主要是通过对协方差矩阵进行特征分解,以得出数据的主成分(即特征向量)与它们的权值(即特征值)。
- 中心化处理数据后,我们希望
- 方差尽可能大,满足下式:
- 降维后的各特征之间互不相关,协方差=0:
- 观察到的数据,协方差矩阵为:
样本数据-矩阵
协方差矩阵乘以系数
- 转化后的数据矩阵Y满足:
映射新坐标系
下标c表示协方差矩阵
- 计算得出基向量P