2.11 PCA的算法原理和流程
基于最小投影距离为评价指标推理:
假设数据集是个
维数据,
,也就是默认为
行
列的矩阵。这个矩阵的数据已经进行了中心化。经过投影变换得到新坐标为
,其中
是标准正交基,即
,
。
- 降维
经过降维后,新坐标为,其中
是降维后的目标维数。样本点
在新坐标系下的投影为
,其中
是
在低维坐标系里第
维的坐标值。
- 升维
如果用去恢复
,则得到的恢复数据为
,其中
为标准正交基组成的矩阵。
考虑到整个样本集,样本点到这个超平面的距离足够近,目标变为最小化 。对此式进行推理,可得:
在推导过程中,用到了:
-
,
- 矩阵转置公式
,
-
,
-
以及矩阵的迹。
最后两步是将代数和转为矩阵形式。 由于 的每一列向量
是标准正交基,
是数据集的协方差矩阵,
是一个常量(因为归一化了)。最小化
的问题可以等价于
利用拉格朗日函数可得到
对 求导,可得
,也即
。
是
个特征向量组成的矩阵,
为
的特征值。
即为我们想要的矩阵。 对于原始数据,只需要
,就可把原始数据集降维到最小投影距离的
维数据集。
由上述分析,得到PCA的算法流程。
输入: 维样本集
,目标降维的维数
。
输出:降维后的新样本集 。
主要步骤如下:
-
归一化。对所有的样本进行中心化,
。
- 计算样本的协方差矩阵
。
- 对协方差矩阵
进行特征值分解。
- 取出最大的
个特征值对应的特征向量
。
- 标准化特征向量,得到特征向量矩阵
。
- 转化样本集中的每个样本
。
- 得到输出矩阵
。
注:在降维时,有时不明确目标维数,而是指定降维到的主成分比重阈值。假设
个特征值为
,则
可从
得到。
PCA算法主要优缺点
优点:
- 仅仅需要以方差衡量信息量,不受数据集以外的因素影响。
- 各主成分之间正交,可消除原始数据成分间的相互影响的因素。
- 计算方法简单,主要运算是特征值分解,易于实现。
缺点:
- 主成分各个特征维度的含义具有一定的模糊性,不如原始样本特征的解释性强。
- 方差小的非主成分也可能含有对样本差异的重要信息,因降维丢弃可能对后续数据处理有影响。