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