机器学习系列1 PCA(主成分分析法)

1.PCA的应用

   1.降维

   2.去除数据相关性,对数据特征进行抽取

2.主成分选择原则

  (1)主成分是原来变量的线性组合;

  (2)各主成分之间互不相关;

  (3)主成分分析的实质就是找到一个正交变换,即有正交阵U,使得一个?维向量

                              X=\begin{bmatrix} x1,x2,......,xd \end{bmatrix}

     对其做正交变换Y^{T}=UX^{T},满足Y的各个分量之间是不相关的(即协方差为0),而且?的第一个分量的方差是最大的,第二个次之……

3.主成分分析步骤

   1.将原数据中心化

   2.对中心化后的数据的协方差矩阵\frac{1}{n}XX^{T}进行特征值分解W\sum W^{T}

   3.对特征值进行由大到小排序,选择前几个比较大的特征值对应的特征向量W_{r}对X进行投影变换,那么主成分Y=W_{r}^{T}X

4.推导过程

  假设数据已经中心化

                          X=\begin{bmatrix} x1,x2,......,xn \end{bmatrix} \epsilon R^{m*n}

 1.正交投影矩阵:一个向量b想向某个已知空间A正交投影,那么其投影矩阵为A(A^{T}A)^{-1}A^{T} (证明不难可以自己证明一下)

 2.SVD分解:X=U\sum V^{T} 

 那么由上,原数据向主成分空间投影

                       PX=X(X^{T}X)^{-1}X^{T}=USV^{T}(VS^{T}U^{T}USV^{T})^{-1}VS^{T}U^{T}=UU^{T}X  (1)

                       P=UU^{T}                                                                                                   (2)

 

 PCA就是想找一个单位方向u,其中u^{t}u=1使得x_{i}在这个方向上正交投影的长度均值达到最大,换言之就是投影后散布最大,也就   是信息保留最多。

 问题现在变成求     (3)               

                      max\frac{1}{n}\sum_{i=1}^{n}\left \| u(u^{T}x_{i})) \right \|_{2}^{2}                                           

 

 即  (4)           max u^{T}Cu         

C=\frac{1}{n}XX^{T}    进行特征分解,C=W\Lambda W^{T},将特征值从大到小分好 即\lambda _{1}>\lambda _{2}>......>\lambda _{n-1}>......>\lambda _{m}

由于SVD的U也是XX^{T}特征分解得到,所以u可以看作w_{i}的线性组合

                    u=\sum_{i}^{m}a_{i}w_{i}=Wa     

代入(4)式中 变为  (5)    max a^{T}\Lambda a     

(6)            

                                        a^{T}\Lambda a=\sum_{i=1}^{m}a_{i}^{2}\lambda _{i}\leqslant \lambda _{1}\sum_{i=1}^{m}a_{i}^{2}=\lambda _{1}a^{T}a=\lambda _{1}               

即当a_{1}=1时(4)式成立

当然如果你想使用PCA将原数据降为s维,那么同样的推导方式,你将得到a_{1}.........a_{s}=1

也就是使得                       u_{s}=W_{s}                                

通过以上推导我们就明白了,PCA的算法步骤 

   1.将原数据中心化

   2.对中心化后的数据的协方差矩阵\frac{1}{n}XX^{T}进行特征值分解W\sum W^{T}

   3.对特征值进行由大到小排序,选择前几个比较大的特征值对应的特征向量W_{r}对X进行投影变换,那么主成分Y=W_{r}^{T}X

      r就是你想降维到的维数。

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值