【发布时间】:2017-06-04 13:35:44
【问题描述】:
底线问题:当我使用计算出的 PCA 投影矩阵 P 来投影向量 v 到另一个空间(可能在维度上较低),我应该首先从 v 中 减去用于创建协方差矩阵的向量,其主要特征向量形成投影矩阵 P ?
另一个派生问题:如果上一个问题的答案是“正确的”,那么当我将一个“缩小”的向量投影回原始空间时,我应该最终添加 对它有同样的意思吗?
现在是详细的问题,包括可能引起混淆的步骤:
PCA 流程按以下方式进行:
采用 m 个长度为 d 的向量并计算它们的协方差矩阵。由于 (i,j) 位置的元素是第 i 维的协方差和j的所有m向量的维度,我们可以得到目标( dxd) 大小的协方差矩阵,通过从所有向量中减去平均值,创建一个大小为 (dxm) 的矩阵 A ),其中所有减去均值的向量被放置为列向量并计算乘法:C = AA'。
计算d的C的特征值和特征向量,对于一些预选的k,创建一个大小为(kxd)的矩阵P em>,并将最大特征值对应的k个特征向量按降序排列,作为P的行向量.
对于我们想要投影到的原始维度 d 的任何向量 v可能的降维k,我们计算乘法:u = Pv,它在可能的情况下产生一个向量降维k。
对于任何已经投影到可能减少的维度 k 的向量 u,如果我们想将它(在可能丢失数据之后)投影回原始维度 d,我们计算乘法:v = P'u,生成原始维度 d 的向量。
问题是:
- 在步骤 (3) 中,我们应该首先从 v 中减去我们在步骤 (1) 中计算的平均值强>?
- 在步骤 (4) 中,我们最终应该将我们在步骤 (1) 中计算的平均值添加到 v强>?
【问题讨论】:
-
在第 1 步中,您忘记将 AA' 除以 m。
-
我同意,但它只是一个常数,它不应该影响特征向量及其对应特征值的顺序
-
此外,我认为您应该除以 sqrt(m),就像在协方差度量公式中一样
-
不,我相信它是 m,除非您自己重新缩放样本,在这种情况下它是 sqrt(m)。对于 PCA 压缩,这确实无关紧要,因为特征值仅用于对特征向量进行排序,不受此常数因子的影响。
-
你是对的,它是 m,而不是 sqrt(m)
标签: pca