机器学习系列—12.降维之PCA

Contents

许多学习方法都涉及距离计算,而高维空间会给距离计算带来很大的麻烦,甚至计算内积都不再容易。事实上,在高维情形下出现的数据样本稀疏、距离计算困难等问题是所有机器学习方法共同面临的严重障碍,被称为“维数灾难”(curse of dimensionality)。缓解维数灾难的一个重要途径就是降维(dimension reduction),也称“维数约简”。

为什么能进行降维?
因为在很多时候收集到的数据虽然是高维的,但与学习任务密切相关的也许仅是某个低维分布,即高维空间中的一个低维“嵌入”(embedding)。若要求原始空间中样本之间的距离在低维空间中得以保持,即“多维缩放”(Multiple Dimension Scaling,MDS)。一般来说,欲获得低维子空间,最简单的是对原始高维空间进行线性变换。

基于线性变换来进行降维的方法称为线性降维方法,他们都符合式(10.13)的基本形式,不同之处是对低维子空间的性质有不同的要求,相当于对W施加了不同的约束。
主成分分析PCA
主成分分析(Principle Component Analysis,PCA)是最常用的一种降维方法。对于正交属性空间中的样本点,用一个超平面对所有样本进行恰当的表达,那么这个超平面大概应具有这样的性质:

  1. 最近重构性:样本点到这个超平面的距离都足够近
  2. 最大可分性:样本点在这个超平面上的投影能尽可能分开。

基于这两种性质能分别得到主成分分析的两种等价推导。
最近重构性:最小化 原样本点x与基于投影重构的样本点x之间的距离为:(W是投影变换后得到的新坐标)

从最大可分性出发,样本点x在新空间中超平面上的投影是WX,若所有样本点的投影能尽可能分开,则应该使投影后样本点的方差最大化,

显然这两个式是等价的。对其使用拉格朗日乘子法可得:

因此PCA算法描述如下:

第3步是将求得的特征值排序:λ1≥λ2≥…≥λd,然后再取前d’个特征值。实践中通常对X进行奇异值分解来代替协方差矩阵的特征值分解。
PCA舍弃d-d’个特征值的特征向量是必要的,因为一方面,舍弃这部分信息之后能使样本的采样密度增大(降维的重要动机),另一方面,当数据收到噪声影响时,最小的特征值所对应的特征向量往往与噪声有关,将它们舍弃能在一定程度上起到去躁的效果。

Contents