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