主成分分析(PCA算法)

       这两天一直在学习主成分分析算法(PCA),通过查阅相关的资料,对PCA算法的原理和实施过程有了一定程度的理解,话不多说,直接步入正题。

一、PCA算法原理

官方定义:PCA是一种常用的数学分析的方法。PCA通过线性变换将原始数据变换为一组各维度线性无关的表示,可用于提取数据的主要特征分量,常用于高维数据的降维。

我的理解:PCA是在尽量不丢失原有数据信息的基础上进行数据的降维。举一个二维降一维的栗子,假设有一组数据[-1, -2], [-1, 0], [0, 0], [0, 1], [2. 1],可以将这些数据点在坐标系中表示出来。

 这些数据本就是二维,想要再降维则需要重新找一个方向,并把这些点映射到这个方向上(降到1维),这就是PCA算法的主要目的。但是将这些点映射到哪个方向上比较合适呢?试想一下,如果这些点映射到X轴上,那么[-1, -2]和[-1, 0]会在X轴上重合,这样会损失原有的信息,如果这些点都映射到Y轴上,同理也会有两点重合在一起。如何找到一个合适的方向使得不会损失原有的信息呢?PCA的做法是,找到新映射的方法需要满足如下两个原则:

(1)在新映射的方向上每个数据的映射点方差尽可能大。因为方差大的数据所包含的信息量越大。

(2)新映射的方向应彼此正交,这样映射出的坐标点选取才更有意义

 二、PCA算法过程以及实例

1、PCA算法的过程

(1)数据中心化:对X中的每一行(即一个特征属性)进行零均值化,即减去这一行的均值

(2)求出数据中心化后矩阵X的协方差矩阵(即特征与特征之间的协方差构成的矩阵)

(3)求解协方差矩阵的特征值和特征向量

(4)将特征向量按照特征值从大到小按列进行排列称为矩阵,获取最前面的k列数据形成矩阵W。

(5)利用矩阵W和样本集X进行矩阵的乘法得到降低到k维的最终数据矩阵。

2、PCA算法实施过程所用公式

(1)方差

   一个字段的方差可以看做是每个元素与字段均值的差的平方和的均值,即:由于在上述过程(1)中我们提到,将X中的每一行进行零均值化,因此方差可以直接用每个元素的平方和除以元素个数表示:

我们希望投影后,投影值

  • 30
    点赞
  • 68
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值