底线问题:当我使用计算出的PCA投影矩阵 P 投影向量 v 进入另一个空间(可能在维度方面较低),我应该首先从 v 中减去的平均值用于创建协方差矩阵的向量,其主要特征向量构成投影矩阵 P ?
另一个衍生问题:如果上面问题的答案是"正确",那么当我投射"减少"矢量回到原始空间,我应该最终添加到它同样的意思吗?
现在详细的问题,包括可能引起混淆的步骤:
PCA流程按以下方式进行:
使用长度为 d 的 m 向量并计算其协方差矩阵。由于 (i,j) 位置中的元素是 i &#39;的协方差维度和所有 m 向量的 j &#39维度,我们可以得到目标< em> (dxd) 大小的协方差矩阵,通过减去所有向量的均值,创建一个大小为 A 的矩阵> (dxm) ,其中所有平均减去的向量都作为列向量放置并计算乘法: C = AA&#39;
计算 C 的 d 特征值和特征向量,以及某些预选< em> k ,创建一个大小为 (kxd)的矩阵 P ,并按 P 的行向量放置与最大特征值对应的 k 特征向量的降序
对于原始维度 d 的任何向量 v ,我们要投影到可能减小的维度 k ,我们计算乘法: u = Pv ,它可能会产生一个向量缩小尺寸 k 。
对于已经投影到可能缩减的维度 k 的任何向量 u ,如果我们想要将它(在可能的数据丢失之后)投影到原始维度 d ,我们计算乘法: v = P&#39;你 ,它在原始维度 d 中生成一个向量。
问题是:是否:
答案 0 :(得分:2)
- 在步骤(3)中,我们应该首先从v中减去我们在步骤(1)中计算的平均值?
- 在步骤(4)中,我们应该最后加上v我们在步骤(1)中计算的平均值?
是的,是的。
另请注意,如有必要,您可以在样本的一次通过中计算协方差矩阵,并使用:
COV = E[vv'] - E[v]E[v]'
答案 1 :(得分:2)
在一些教程中找到答案。在这里分享,这样任何人都可以享受......
根据this非常友好和友好的PCA教程,确实应该在(3)中减去平均值,并在(4)中添加。在着名的经典eigenfaces论文中,它似乎也以同样的方式描述。
以下是PCA教程的一些截图,有意义: