lmcinnes/umap

Uniform Manifold Approximation and Projection

解决的问题

UMAP(Uniform Manifold Approximation and Projection)是一种非线性降维技术,用于将高维数据投影到低维空间。它主要用于数据可视化(类似于 t-SNE)以及作为其他机器学习任务(如聚类)的一般性预处理步骤。

工作原理

该算法基于三个假设:数据在黎曼流形上均匀分布,黎曼度量在局部恒定,流形在局部连通。它通过模糊拓扑结构建模流形,并寻找能够保持最接近等效结构的低维投影。

适用人群

需要可视化复杂高维数据集或为下游机器学习任务进行降维的数据科学家和研究人员。它被设计为 scikit-learn 中 t-SNE 的即插即用替代品。

特色亮点

  • 高性能:速度快,可很好地扩展到大规模数据集和高维数据,包括超过一百万维的稀疏数据。
  • 全局与局部结构:通常比 t-SNE 更好地保留全局结构,同时维持局部邻域关系。
  • 多样化的距离度量:支持多种距离函数,包括非度量距离(如余弦距离和相关距离)。
  • 可扩展性:通过 transform 方法支持向现有嵌入中添加新点,可集成到 scikit-learn 流水线中。
  • 监督学习支持:支持使用标签信息的监督和半监督降维。
  • 高级功能:包含 densMAP(保留局部密度信息)、Parametric UMAP(基于神经网络的变换)以及对非欧几里得空间(如双曲嵌入)的支持。
  • 集成性:继承自 scikit-learn 类,提供一致的 API。

相关

  • 项目
  • 项目
  • 项目
  • 项目
  • 项目