本博客在之前的文章【1】中曾经介绍过PCA在图像压缩中的应用。其基本思想就是设法提取数据的主成分(或者说是主要信息),然后摒弃冗余信息(或次要信息),从而达到压缩的目的。本文将从更深的层次上讨论PCA的原理,以及Kernel化的PCA。
首先我们来考察一下,这里的信息冗余是如何体现的。如下图中的左图所示,我们有一组二维数据点,从图上不难发现这组数据的两个维度之间具有很高的相关性。因为这种相关性,我们就可以认为其实有一个维度是冗余的,因为当已知其中一个维度时,便可以据此大致推断出另外一个维度的情况。
为了剔除信息冗余,我们设想把这些数据转换到另外一个坐标系下(或者说是把原坐标系进行旋转),例如像上图中的右图所示之情况,当然这里通过平移设法把原数据的均值变成了零。下图中的左图是经过坐标系旋转之后的数据点分布情况。你可以看出