主成分分析(理论及Matlab实现)

 应用场景   

        主成分分析(Principal Component Analysis,PCA),主要用于对特征变量进行降维,在面对特征变量过多的时候使用。由于变量之间具有一定的相关关系,此时可以解释为这两个变量反映的信息有一定的重叠。针对这些重复的变量(关系紧密的变量)可以进行删减融合,建立尽可能少的新变量,使得这些新变量是两两不相关的,而且这些新变量在反映的信息方面尽可能保持原有的信息。

        将原来变量重新组合成一组新的互相无关的几个综合变量,同时根据实际需要从中可以取出几个较少的综合变量尽可能多地反映原来变量的信息的统计方法。

        个人使用较多的场景是对高维数据预处理和回归特征的提取。

原理

主要思想

        PCA的主要思想是将n维特征映射到k维上,这k维是全新的正交特征也被称为主成分,是在原有n维特征的基础上重新构造出来的k维特征。PCA的工作就是从原始的空间中顺序地找一组相互正交的坐标轴,新的坐标轴的选择与数据本身是密切相关的。其中,第一个新坐标轴选择是原始数据中方差最大的方向,第二个新坐标轴选取是与第一个坐标轴正交的平面中使得方差最大的,第三个轴是与第1,2个轴正交的平面中方差最大的。依次类推,可以得到n个这样的坐标轴。通过这种方式获得的新的坐标轴,我们发现,大部分方差都包含在前面k个坐标轴中,后面的坐标轴所含的方差几乎为0。于是,我们可以忽略余下的坐标轴,只保留前面k个含有绝大部分方差的坐标轴。事实上,这相当于只保留包含绝大部分方差的维度特征,而忽略包含方差几乎为0的特征维度,实现对数据特征的降维处理。

        通过计算数据矩阵的协方差矩阵,然后得到协方差矩阵的特征值特征向量,选择特征值最大(即方差最大)的k个特征所对应的特征向量组成的矩阵。这样就可以将数据矩阵转换到新的空间当中,实现数据特征的降维。

计算步骤

        假设有 n个样本,每个样本有p 个指标,则可构成大小为 n × p 的样本矩阵 X :  

\mathrm{X}=\left[\begin{array}{cccc} \mathrm{x}_{11} & \mathrm{x}_{12} & \cdots & \mathrm{x}_{1 \mathrm{p}} \\ \mathrm{x}_{21} & \mathrm{x}_{22} & \cdots & \mathrm{x}_{2 \mathrm{p}} \\ \vdots & \vdots & \ddots & \vdots \\ \mathrm{x}_{\mathrm{n} 1} & \mathrm{x}_{\mathrm{n} 2} & \cdots & \mathrm{x}_{\mathrm{np}} \end{array}\right]

1. 首先对数据进行标准化处理:

X_{ij} = \frac{x_{ij}-\bar{x} _{j}}{S_{j}}

        其中:\bar{x} _{j}为每列的均值;S_{j}为每列的标准差,公示如下:

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值