1. 基本概念

机器学习领域中所谓的降维就是指采用某种映射方法,将原高维空间中的数据点映射到低维度的空间中。降维的本质是学习一个映射函数 f : x->y,其中x是原始数据点的表达,目前最多使用向量表达形式。y是数据点映射后的低维向量表达,通常y的维度小于x的维度(当然提高维度也是可以的)。f可能是显式的或隐式的、线性的或非线性的。

2. 降维的作用

  • 降低时间和空间复杂度
  • 节省了提取不必要特征的开销
  • 去掉数据集中夹杂的噪声
  • 较简单的模型在小数据集上有更强的鲁棒性
  • 当数据能有较少的特征进行解释,我们可以更好的解释数据,使得我们可以提取知识
  • 实现数据可视化

3. 降维的方法

3.1 主成分分析PCA(Principal Component Analysis)

Pearson于1901年提出,再由Hotelling(1933)加以发展的一种多变量统计方法。通过析取主成分显出最大的个别差异,也用来削减回归分析和聚类分析中变量的数目,可以使用样本协方差矩阵或相关系数矩阵作为出发点进行分析。Kaiser主张(1960)将特征值小于1的成分放弃,只保留特征值大于1的成分,如果能用不超过3-5个成分就能解释变异的80%,就算是成功。
基本思想:设法将原先众多具有一定相关性的指标,重新组合为一组新的互相独立的 综合指标,并代替原先的指标。

3.2 因子分析

降维的一种方法,是主成分分析的推广和发展。
是用于分析隐藏在表面现象背后的因子作用的统计模型。试图用最少个数的不可测的公共因子的线性函数与特殊因子之和来描述原来观测的每一分量。

因子分析的主要用途
减少分析变量个数
通过对变量间相关关系的探测,将原始变量分组,即将相关性高的变量分为一组,用共性因子来代替该变量
使问题背后的业务因素的意义更加清晰呈现

与主成分分析的区别
主成分分析侧重“变异量”,通过转换原始变量为新的组合变量使到数据的“变异量”最大,从而能把样本个体之间的差异最大化,但得出来的主成分往往从业务场景的角度难以解释。
因子分析更重视相关变量的“共变异量”,组合的是相关性较强的原始变量,目的是找到在背后起作用的少量关键因子,因子分析的结果往往更容易用业务知识去加以解释。

3.3 线性判别式分析(Linear Discriminant Analysis)

线性判别式分析(Linear Discriminant Analysis),简称为LDA。也称为Fisher线性判别(Fisher Linear Discriminant,FLD),是模式识别的经典算法,在1996年由Belhumeur引入模式识别和人工智能领域。
基本思想是将高维的模式样本投影到最佳鉴别矢量空间,以达到抽取分类信息和压缩特征空间维数的效果,投影后保证模式样本在新的子空间有最大的类间距离和最小的类内距离,即模式在该空间中有最佳的可分离性。
LDA与前面介绍过的PCA都是常用的降维技术。PCA主要是从特征的协方差角度,去找到比较好的投影方式。LDA更多的是考虑了标注,即希望投影后不同类别之间数据点的距离更大,同一类别的数据点更紧凑。

3.4 多维尺度分析(Multi Dimensional Scaling)

多维尺度分析(Multi Dimensional Scaling),简称为MDS。MDS的目标是在降维的过程中将数据的dissimilarity(差异性)保持下来,也可以理解降维让高维空间中的距离关系与低维空间中距离关系保持不变。MDS利用成对样本间相似性,目的是利用这个信息去构建合适的低维空间,使得样本在此空间的距离和在高维空间中的样本间的相似性尽可能的保持一致。

3.5 局部线性嵌入Locally Linear Embedding(LLE)

Locally Linear Embedding(LLE)是一种非线性降维算法,它能够使降维后的数据较好地保持原有流形结构。LLE可以说是流形学习方法最经典的工作之一。很多后续的流形学习、降维方法都与LLE有密切联系。
LLE算法认为每一个数据点都可以由其近邻点的线性加权组合构造得到。
算法的主要步骤分为三步:

  1. 寻找每个样本点的k个近邻点;
  2. 由每个样本点的近邻点计算出该样本点的局部重建权值矩阵;
  3. 由该样本点的局部重建权值矩阵和其近邻点计算出该样本点的输出值。