PCA主成分分析
简介
通过析取主成分显示出最大的个别差异,也用来削减回归分析和聚类分析中变量的数目,可以使用样本协方差矩阵或相关系数矩阵作为出发点分析,将特征值小于1的成分放弃,只保留特征值大于1的成分,如果能用不超过3-5个成分就能解释变异的80%,就算是成功
y | x1 | x2 | x3 |
---|---|---|---|
4 | 8 | 0 | 100 |
3 | 5 | 0 | 100 |
5 | 6 | 0 | 100 |
6 | 4 | 0 | 100 |
9 | 13 | 0 | 100 |
7 | 9 | 0 | 100 |
首先可以知道x2没用,因为不光值没有变化,而且值还均为0,其次x3也没用,因为数值没有变化,在结果可以直接写x3=c*100,求偏导之后为常数,没用!
但实际情况可能并不像这样整齐,可能会有一些微小的振幅变化,那么这个时候用方差可以精确的描述数据的变化程度,意思就是说当审视变量是不是每一个都有用时,可以计算方差,如果方差很小,则抛弃该变量。
但是问题又来了,请看下表:
y | x1 | x2 | z1(x1-x2) | z2(x1+x2) |
---|---|---|---|---|
4 | 4 | -4 | 8 | 0 |
3 | 3 | -3 | 6 | 0 |
5 | 5 | -5 | 10 | 0 |
7 | 7 | -7 | 14 | 0 |
通过x1与x2的线性组合得到的新变量z2依然没有意义,主成分的意义也显现出来,通过对一部分变量线性组合,得到新变量,从而达到降维的目的,组合的变量也通常具有更具体的含义,比如房价中长和宽,通过两者相乘得到房屋面积,这个新变量对于数据分析师来说更直观
接着上面的例子,实际工作中通常这样处理
做这种变换主要是满足正交的需要,使之可以表达为一个旋转
正交矩阵可以代表一种旋转,若不做这种变化,则坐标再后续也相当于拉伸
小总结:
PCA就是通过对原先的变量进行线性组合,得到新变量,然后再利用新变量的方差进行计算,去掉一些方差较小的新变量
PCA算法在数学上即可解决feature的多重共线性问题,解决多重共线性也可以使用岭回归(我还不会哎~逃)
这个只要是看李宏毅老师的一个视频整理的,由于本人是小白,所以可能略(wu)有(ren)纰(zi)漏(di),希望大家多批评
另外再贴个写的比较好的博客
http://www.cnblogs.com/frombeijingwithlove/p/5931872.html
PS:第一次使用latex编辑公式真是被虐惨