什么是 UMAP?
UMAP 是把输入邻域表示为模糊加权图,再优化具有相似 Membership 的低维图,从而完成非线性降维的方法。
快速了解
| 全称 | 均匀流形逼近与投影(Uniform Manifold Approximation and Projection) |
|---|---|
| 创建时间 | 2018 年由 Leland McInnes、John Healy、Nathaniel Saul 与 Lukas Grossberger 发布 |
| 规范文档 | 官方规范 |
工作原理
构建模糊邻域图
UMAP 论文以流形学习和模糊拓扑表示为基础。工程上,每个样本都有局部连通半径与平滑距离尺度;有向 Membership 在最近的确定连接之外随距离衰减,再通过 Fuzzy Union 把两个方向合并为一条加权边。
图是否有意义取决于输入表示与距离函数。标准化测量上的 Euclidean Distance、归一化 Embedding 上的 Cosine Distance 与领域 Metric 会定义不同邻域。缺失值、重复样本、批次效应与采样不足会在优化开始前就改变拓扑。
区分邻域尺度与布局紧致度
根据当前 umap-learn 参数指南,n_neighbors 控制估计流形的局部程度:较小值强调细粒度邻域,较大值使用更宽上下文。min_dist 控制输出点能压得多紧,并不会发现所谓自然 Cluster Radius。
应预先声明 Metric、邻域数、输出维度和随机种子的比较网格,保持预处理与样本身份一致,保存实现版本,并检查结果稳定性,而不是选择分群最漂亮的一张图。
版本化复现与新样本转换行为
UMAP 在近似搜索与优化中使用随机性。项目的复现指南指出,精确复现 Seed 结果可能需要放弃部分多线程执行。Seed 只能复现某个实现路径,不能证明结构对重采样和参数变化稳定。
与经典 t-SNE 不同,参考实现可以相对冻结的训练 Embedding 转换新记录,但它仍是学习近似。预处理与 UMAP 都应只在训练数据上拟合,持续监控漂移和邻域召回,也不能未经原表示验证就直接对二维图做聚类。
主要特点
- 构建经过局部尺度调整的模糊最近邻图
- 通过吸引与排斥作用优化低维 Membership
- 用 n_neighbors 控制邻域尺度,用 min_dist 控制输出紧致度
- 支持多种输入 Metric 和高于二维的输出空间
- 具有随机性,可在精确复现与并行性能之间取舍
- 常见实现可转换新样本,但仍需漂移验证
常见用途
- 探索大规模 Embedding 或表示数据的局部结构
- 在正式聚类评估前建立非线性诊断视图
- 结合留出验证执行下游降维实验
- 比较模型或数据版本之间的邻域稳定性
- 把兼容新样本放入冻结参考 Embedding
示例
Loading code...常见问题
UMAP 的 n_neighbors 与 min_dist 分别控制什么?
`n_neighbors` 决定估计局部结构的尺度:小值聚焦细邻域,大值使用更宽上下文。`min_dist` 控制输出点的紧致程度。两者都不是 Cluster 数,也不是算法自动发现的真实边界。
UMAP 会保留全局距离和 Cluster 大小吗?
不能可靠保证。UMAP 在部分数据上可能比某些局部可视化方法保留更多整体组织,但坐标轴、绝对距离、岛屿面积、密度和空白仍会被图构建与优化过程扭曲。
UMAP 能转换拟合时没有见过的新记录吗?
参考实现支持相对已拟合图与 Embedding 转换兼容新记录。团队仍需冻结预处理、Metric、实现版本、参数和参考样本,并在分布漂移时重新评估邻域召回与下游效果。
设置 random_state 就能证明 UMAP 结果稳定吗?
它可以复现受支持的执行路径,有时需要牺牲部分并行性能,但不能证明科学结论稳定。还应跨 Seed、重采样、参数范围和实现版本重复,并比较邻域关系而不只是图形外观。
可以直接在二维 UMAP 图上聚类吗?
通常不能把它作为唯一证据。二维表示会主动扭曲结构和密度。若把 UMAP 纳入聚类管线,应选择有依据的较高输出维度,只在训练数据内调参,并在原始表示和留出数据上验证最终划分。