Appearance
导论:高维诅咒与低维流形
维数灾难(Curse of Dimensionality)是高维数据的根本困境:随着维度的增长,数据在空间中呈指数级稀疏化,距离度量失效,计算呈指数增长。降维(Dimensionality Reduction)的核心目标是在保留数据本质结构的前提下,将高维空间中的点映射到低维表示空间。
根据保留结构的性质,降维方法分为两大阵营:
- 线性降维(如 PCA):假设高维数据分布在一个线性子空间中,寻找正交投影方向。
- 非线性降维(流形学习,如 t-SNE、UMAP):假设高维数据分布在低维非线性流形上,试图展开并嵌入该流形,以保留局部或全局的邻域关系。
第一部分:PCA(主成分分析)—— 线性方差最大化的黄金标准
主成分分析(Principal Component Analysis)由 Pearson(1901)和 Hotelling(1933)奠定,是统计学上最古老、应用最广泛的线性降维技术。它本质上是将数据协方差矩阵对角化。
1.1 严格定义的双重等价视角
视角一:方差最大化(最大投影方差) 寻找第一个主成分方向
由瑞利-里兹定理,最优解为
视角二:最小化重构误差(最小化投影损失) 寻找
由 Eckart-Young 定理,其最优解同样为取协方差矩阵前
1.2 基于 SVD 的数值计算方法
在实际计算中,无需显式计算协方差矩阵。对中心化后的数据矩阵
1.3 主成分贡献率
第
深刻理解:PCA 是无监督的,且假设了数据的高斯性和线性结构。它是一种正交投影变换,变换后的各维度线性无关(协方差为零)。然而,PCA 对数据缩放极度敏感(标准化是强制步骤),且无法处理非线性流形。在 ML 中,它常用于可视化预处理、白化(Whitening)、特征压缩和去噪。
第二部分:SNE 与 t-SNE —— 概率化局部邻域保护的革命
t-SNE(t-Distributed Stochastic Neighbor Embedding)由 Maaten 与 Hinton 于 2008 年提出,是迄今为止最著名的高维数据可视化利器。其核心思想是:如果两个高维点相似,那么它们在低维空间中的投影也必须相似。
2.1 从 SNE 出发:条件概率与不对称性
SNE(Stochastic Neighbor Embedding)将高维空间中欧氏距离转化为条件概率来表示相似度。对于点
此处
2.2 t-SNE 的两大关键突破
突破一:对称化(Symmetrization) SNE 的条件概率是不对称的(
突破二:低维空间使用 t 分布(重尾分布)解决“拥挤问题” 在高维空间中,中低距离的点对数量远多于极近点对。若低维空间继续使用高斯分布,这些中等距离的点会被挤在有限的二维平面中心,形成“拥挤”(Crowding)现象,难以区分聚类。t-SNE 在低维空间中使用学生 t 分布(自由度 = 1,即标准柯西分布):
t 分布的尾部比高斯分布更“重”。它意味着:在低维空间中,即使两个点之间的距离被放大,仍能保持较高的相似度
2.3 梯度下降与本质局限
t-SNE 的梯度具有明确的物理意义:它表现为高维空间“引力”与低维空间“斥力”的合力。然而,t-SNE 有以下致命伤:
- 计算复杂度
,无法处理百万级数据(Barnes-Hut 近似可降至 ,但依然很慢)。 - 随机初始化导致不确定性:不同随机种子可能收敛到不同的全局结构,因此它不能用于比较不同运行的结果。
- 局部结构保留优于全局结构:t-SNE 主要保留小距离邻域,而全局距离(如簇间相对位置)在缩放和旋转意义下无意义,不可用于推断聚类大小或距离的相对差异。
第三部分:UMAP(Uniform Manifold Approximation and Projection)—— 拓扑学视角下的统一流形
UMAP 由 McInnes 等人在 2018 年提出,是近年来最强大的非线性降维技术,在计算速度和全局结构保留方面全面超越 t-SNE。它的根基建立在黎曼几何和**代数拓扑(单纯集,Simplicial Sets)**之上。
3.1 流形与模糊拓扑表示
UMAP 假设数据在高维空间中均匀分布在紧致黎曼流形上,并试图找到一个与该流形在拓扑上等价(同胚)的低维嵌入。
- 构建模糊拓扑表示(高维空间):对于每个点
,计算其到第 近邻的距离 。定义局部连通性半径,并构建一个模糊单纯集(Fuzzy Simplicial Complex)。高维空间中的“开集”关系被量化为一个模糊的隶属概率 ,度量了 与 属于同一局部邻域的可能性。 - 低维嵌入的模糊表示:低维空间中对应点
之间的相似度 使用与 t-SNE 类似的函数,但 UMAP 使用的是无归一化的交叉熵目标。
3.2 交叉熵损失与受力分析(数学核心)
UMAP 的最小化目标为两个模糊集之间的交叉熵(而非 KL 散度):
这个损失函数具有极强的几何解释:
- 第一项(吸引力):当
大(高维邻居)且 小(低维距离远)时,产生极大的吸引力,将相似点拉近。 - 第二项(排斥力):当
小(高维非邻居)且 大(低维距离近)时,产生强烈的排斥力,将不相似的点推开。
决定性区别:与 t-SNE 的归一化 softmax 不同,UMAP 的损失没有分母归一化约束。这意味着,只要两点在低维空间中已经足够远(
),即使 很小,排斥力项也会迅速衰减为 0。这导致 UMAP 不强制“全局距离上的归一化竞争”,从而能够更好地保留数据的全局结构(如簇间的大尺度距离关系),这是相对于 t-SNE 在全局结构保留上的根本性进步。
3.3 加速策略与实用优势
- 随机梯度下降(SGD)与负采样:借鉴 word2vec 的思想,UMAP 不计算全量
的损失,而是对非邻居进行随机负采样,使复杂度接近 ,极其适合百万级数据。 - 无随机种子不稳定困扰:虽然也依赖随机初始化,但其全局结构偏好使其具有更高的重复性。
- 可扩展的嵌入维度:UMAP 不限于 2D/3D,理论上可生成任意维度的嵌入,常被用作特征工程中的预处理降维步骤。
第四部分:宏观对比与选择哲学
| 维度 | PCA | t-SNE | UMAP |
|---|---|---|---|
| 数学根基 | 线性代数(特征分解) | 概率分布(KL散度) | 拓扑流形(模糊单纯集) |
| 保留结构 | 全局方差结构 | 局部邻域(极近邻) | 局部 + 全局(平衡较好) |
| 计算复杂度 | |||
| 确定性 | 解析解,确定性极高 | 随机初始化,高度不确定 | 随机初始化,中等稳定性 |
| 距离解释性 | 主成分负载有明确含义 | 簇间距离无意义,不可解释 | 簇间相对距离部分可信 |
| 主流用途 | 数据去噪、特征压缩、预处理 | 高维数据二维可视化(定性) | 可视化 + 通用降维特征提取 |
选择法则:
- 如果你需要解释变量重要性、处理共线性、或作为监督学习的输入预处理,选 PCA。
- 如果你只需将高维数据画在二维散点图上做定性观察(如检查聚类趋势),且数据量小于 5 万,t-SNE 仍是视觉上分离簇最锋利的工具。
- 如果你需要高保真地将数据降到 5~50 维输入下游模型,或数据量巨大(几十万级)且希望同时保留局部聚类和全局拓扑,UMAP 是无可争议的现代首选。
结语:窥见高维世界的投影仪
降维的核心困境在于信息保真度的不可兼得(No Free Lunch Theorem for manifolds):没有一种降维算法能在保持任意结构(距离、邻域、拓扑、密度)的同时压缩维度。
- PCA 是精确的线性眼——基于协方差的平方结构。
- t-SNE 是极端的局部放大镜——牺牲全局拓扑以换取极其清晰的视觉分组。
- UMAP 是均衡的拓扑重建者——用量子叠加般的模糊集,在计算效率和结构保真间找到了黄金分割点。
理解它们,不仅是为了按需调用 sklearn.decomposition.PCA 或 umap.UMAP,而是为了理解一个深刻的哲学命题:数据本身并没有固有的“真实维度”,维度只是观测者为了认知便利而对流形施加的投影坐标。 降维算法的历史,正是人类试图为高维混沌赋予几何秩序的精妙史诗。