PCA 的算法步骤:
设有 m 条 n 维数据。
- 将原始数据按列组成 n 行 m 列矩阵 X;
- 将 X 的每一行进行零均值化,即减去这一行的均值;
- 求出协方差矩阵 C = 1/m X X ^T;
- 求出协方差矩阵的特征值及对应的特征向量;
- 将特征向量按对应特征值大小从上到下按行排列成矩阵,取前 k 行组成矩阵 P;
Y = PX 即为降维到 k 维后的数据。
其中降维后的矩阵Y的每一行可以看成是m条数据在新的k个维度上的投影坐标,比如Y的第i行表示在原始坐标上的m数据在第i个维度上的投影坐标(这里的第i维是某一个维度,就是一条坐标轴,如(0,0,…,1)这个基来表示这个轴)