PCA公式推导
PCA目的与原理
PCA可以实现在维度较多的时候的降维的功能,并且能在降维的过程中最大的保留原来的变量的所有信息。实现的思路是,对于现存的m维数据,找到k(k<m)维数据来对其进行代替,目标是尽可能减少信息的损失。为了更加直观的认识,我们以二维的数据为例。如下图,存在蓝色的一些数据点,我们希望找到一个比二维维度更低(这里就是这条一维的直线),并且可以用这个维度得到评价指标的相应的值。举例来说,PCA的目的就是,对于一个点,如图中的x1
找到一个方向为u的直线,使得x1 到直线的距离 d1尽可能的小,并且可以用d2 来表示x1 的信息。当维度增加的时候,我们不能直观的获取这个 d1,而我们发现这样的直线可以满足在投影之后,样本点的分布尽量的分散,并且在数学中常用方差来衡量样本之间的距离。因此在求解的时候,使用变化后让每个特征内部方差最大化的思想来进行求解。
另外,在实际使用PCA的时候需要注意,要对数据进行标准化,如果维度之间的量纲差异过大,需要对数据进行归一化,这样有利于提升计算的效率。
PCA使用说明
在实际使用PCA的时候,只要这样几个步骤就可以了。
1)先按照数据的特点,对数据进行标准化和归一化的处理。根据数据点计算协方差矩阵。
2)求出协方差矩阵的特征值以及对应的特征向量
3)将特征向量按照对应的特征值大小从上到下按行排列成矩阵,取前k行形成矩阵P
4)Y = PX即为降维到k维后的数据
那么为什么可以这样做呢?我们可以看第三个部分PCA的公式推导来进行理解。
PCA公式推导