在主成分分析的一些应用中,数据点的数量小于数据空间的维度。例如,我们可能希望将PCA应用于由几百张图片组成的数据集,每个图片对应于几百万维(对应于图像中每个像素的三个颜色值)空间中的一个向量。注意,在一个维空间中,个数据点定义了一个线性子空间,它的维度最多为,因此在使用PCA时,几乎没有大于的数据点。实际上,如果我们运行PCA,我们会发现至少个特征值为0,对应于沿着数据集的方差为零的方向的特征向量。此外,通常的寻找矩阵的特征向量的算法的计算代价为,因此对于诸如图像这种应用来说,直接应用PCA在计算上是不可行的。

我们可以这样解这个问题。首先,让我们将定义为维中心数据矩阵,它的第行为。这样,协方差矩阵(12.3)可以写成, 对应的特征向量方程变成了

现在,将两侧左乘,可得

如果我们现在定义,那么我们有

它是矩阵的一个特征向量方程。我们看到这个矩阵与原始的协方差矩阵具有相同的个特征值,原始的协方差矩阵本身有额外的个值为0的特征值。因此我们可以在低维空间中解决特征向量问题,计算代价为而不是。为了确定特征向量,我们将式(11.28)两侧乘以,可得

从中我们可以看到的一个特征向量,对应的特征值为。但是,需要注意,这些特征向量的长度未必等于1。为了确定合适的标准化,我们使用一个常数来对进行重新标度,使得。假设的长度已经被标准化,那么我们有

总结一下,为了应用这种方法,我们首先计算,然后找到它的特征向量和特征值,之后使用式(12.30)计算原始数据空间的特征向量。

results matching ""

    No results matching ""