SuperAPI AI 工具集

umap-learn

数据与分析

查看项目

更新于 10-15 22:40

技能介绍

用途:UMAP(Uniform Manifold Approximation and Projection)是一种非线性降维算法,用于高维数据可视化、密度聚类(如 HDBSCAN、DBSCAN)预处理、机器学习流水线中的特征工程,以及带部分标签的监督/半监督嵌入。

主要能力:支持标准 UMAP、监督与半监督嵌入(通过 y 参数与 target_weight)、对新数据 transform、Parametric UMAP(基于 TensorFlow/Keras 的神经网络嵌入,支持自定义编码器/解码器与重建)、DensMAP(保留密度信息)、AlignedUMAP(跨时间点或批次对齐嵌入)。支持多种距离度量,包括 euclidean、cosine、hamming、jaccard、precomputed 及自定义 Numba 距离函数。

使用方式:安装 pip install umap-learn;Parametric UMAP 需 pip install umap-learn[parametric_umap](依赖 TensorFlow 2.x)。基本用法为先用 StandardScaler 标准化特征,再调用 umap.UMAP(...).fit_transform(X_scaled);可设置 n_neighbors、min_dist、n_components、metric、random_state 等参数,并可作为 sklearn Pipeline 的一步。

适用场景:2D/3D 可视化、聚类前降维(建议 n_neighbors=30、min_dist=0.0、n_components=5-10)、文本/文档嵌入(cosine)、二值/集合数据(hamming/jaccard)、生产环境快速 transform(Parametric UMAP)。

限制:UMAP 保留拓扑而非精确距离,嵌入中的距离与簇间距不应按原始距离解读;2D 嵌入不适合直接用于聚类;结果依赖随机优化,需设置 random_state 复现;首次运行因 Numba JIT 编译较慢;inverse_transform 为近似且对训练嵌入凸包外效果差;高维数据可先用 PCA 降至 50-100 维。资料未提供收费、价格或平台信息。