PCA的核心目标是保留原始数据的最大方差,同时减少维度。其原理是,如果我们保留了方差,就能够保留最多的信息。
但是为什么?
许多人难以直观理解使用“方差”的动机。换句话说:为什么保留了最大方差就等同于保留最大信息?
接下来我们将对此提供一个直观的解释。
假如有人给了我们以下三个人的体重和身高信息:
很明显,身高列与体重列相比,有更大的方差。
因此,即使丢弃体重列,仅凭身高,仍然可以区分这三个人。
但如果仅保留体重列,就不太可能做到这一点了吧!
原因就是身高比体重有更大的方差。
这也是PCA的核心原理,它试图保留最大的数据方差。简而言之,PCA建立在这样一个前提之上:更多的方差意味着更多的信息。
在降维过程中,如果我们保留了方差,就能够保留最多的信息。
但有一点特别要注意,在使用PCA时,我们不仅仅测量所有列的方差,然后丢弃方差最小的列。
相反,我们首先必须转换数据以创建不相关的特征。在那之后,我们根据它们的方差丢弃新特征。
所以,PCA是对协方差矩阵进行特征值分解,而非原始特征矩阵,因为协方差矩阵描述了各个特征之间的关系。对其特征值分解可以找到数据中变化最显著的方向,也就是方差最大的方向。