我正在尝试理解PCA,我经历了几个教程。到目前为止,据我了解,矩阵的特征向量意味着向量在乘以该矩阵时旋转和缩放的方向,与特征值成比例。因此,与最大特征值相关的特征向量定义了最大旋转的方向。我知道沿着主成分,变化最大,重建误差最小。我不明白的是:
为什么找到协方差矩阵的特征向量对应于轴,以便使用此轴更好地定义原始变量?
除了教程之外,我还在这里查看了其他答案,包括这个和这个。但我仍然不明白。
你的前提不正确。PCA(和协方差矩阵的特征向量)当然不能"更好地"代表原始数据。
简而言之,PCA的目标是找到数据的一些低维表示(X
,这是n
维),以便尽可能多地保留变化。结果是,这种低维表示是一个正交子空间,它是数据的最佳k
维表示(其中k < n
)。我们必须找到那个子空间。
另一种思考方式:给定一个数据矩阵X
找到一个矩阵Y
使得Y
是X
的k
维投影。为了找到最佳投影,我们可以最小化X
和Y
之间的差异,这在矩阵语言中意味着最小化||X - Y||^2
。
由于Y
只是X
在较低维度上的投影,因此我们可以说Y = X*v
v*v^T
是较低等级的投影。谷歌rank
这是否没有意义。我们知道Xv
是比X
低的维度,但我们不知道它指向什么方向。
为此,我们发现v
使||X - X*v*v^t||^2
最小化。这等效于最大化||X*v||^2 = ||v^T*X^T*X*v||
X^T*X
是数据的样本协方差矩阵。这就是我们关心数据协方差的数学原因。此外,事实证明,在这方面做得最好的v
是特征向量。在低维投影/近似中,每个维度都有一个特征向量。这些特征向量也是正交的。
请记住,如果它们是正交的,则它们中的任何两个之间的协方差为0
。现在考虑一个对角线为非零,对角线为零的矩阵。这是正交列的协方差矩阵,即每列都是一个特征向量。
希望这有助于弥合协方差矩阵之间的联系,以及它如何帮助产生最佳的低维子空间。
同样,特征向量不能更好地定义我们的原始变量。通过将 PCA 应用于数据集确定的轴是我们原始变量的线性组合,这些变量往往表现出最大方差并产生与我们的原始数据最接近的近似值(通过 l2 范数测量)。