umap算法_UMAP的初步了解及与t-SNE的比较

降维是机器学习中的可视化和理解高维数据的强大工具。t-SNE是最广泛使用的可视化技术之一,但其性能在大型数据集中会受到影响。

UMAP是McInnes等人的一项新技术。与t-SNE相比,它具有许多优势,最显著的是提高了速度并更好地保存了数据的全局结构。例如,UMAP可以在3min之内处理完784维,70000点的MNIST数据集,但是t-SNE则需要45min。此外,UMAP倾向于更好地保留数据的全局结构,这可以归因于UMAP强大的理论基础。

1. 简单比较UMAP与t-SNE

afd9506c9383

虽然这两种算法都表现出强大的局部聚类并将相似的类别分组在一起,但UMAP害将这些相似类别的分组彼此分开。另外,UMAP降维用了4分钟,而多核t-SNE用了27分钟。

2. UMAP参数

UMAP中两个最常用的参数:n_neighbors 和min_dist,它们可有效地用于控制最终结果中局部结构和全局结构之间的平衡。

afd9506c9383

最重要的参数是n_neighbors ,近似最近邻居数。它有效地控制了UMAP局部结构与全局结构的平衡,数据较小时,UMAP会更加关注局部结构,数据较大时,UMAP会趋向于代表大图结构,丢掉一些细节。

第二个参数是min_dist,点之间的最小距离。此参数控制UMAP聚集在一起的紧密程度,数据较小时,会更紧密。较大的值会更松散,而将重点放在保留广泛的拓扑结构上。

afd9506c9383

3. 进一步比较UMAP与t-SNE

t-SNE和UMAP大部分的表现非常相似,但以下示例明显例外:宽而稀疏的cluster中有密集的cluster(如下图所示)。UMAP无法分离两个嵌套的群集,尤其是在维数较高时。

afd9506c9383

UMAP在初始图形构造中局部距离的使用可以解释该算法无法处理情况的原因。由于高维点之间的距离趋于非常相似(维数的诅咒),所以可能会因此将其混合在一起。

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
UMAP(Uniform Manifold Approximation and Projection)是一种基于流形学习的降维算法,可以用于可视化高维数据,类似于 t-SNE算法。在 Python 中,可以使用 umap-learn 包来实现 UMAP 算法的调用。下面是安装和使用 umap-learn 包的步骤: 1. 安装 umap-learn 包 可以使用 pip 命令来安装 umap-learn 包: ``` pip install umap-learn ``` 2. 导入 umap-learn 包 在 Python 代码中,使用以下语句导入 umap-learn 包: ```python import umap ``` 3. 调用 UMAP 算法 使用 umap-learn 包中的 UMAP 类来调用 UMAP 算法。以下是一个示例代码: ```python import numpy as np import umap # 生成随机数据 X = np.random.rand(100, 10) # 调用 UMAP 算法 umap_obj = umap.UMAP(n_neighbors=5, min_dist=0.3, metric='correlation') umap_result = umap_obj.fit_transform(X) # 输出降维后的结果 print(umap_result) ``` 在上面的示例代码中,我们先生成了一个 100 行 10 列的随机数据集。然后,使用 UMAP 类来调用 UMAP 算法,并将参数 n_neighbors 设置为 5,min_dist 设置为 0.3,metric 设置为 correlation。最后,使用 fit_transform 方法将数据集 X 降维,并将结果保存在 umap_result 变量中。最后,我们输出了降维后的结果。 注意,UMAP 算法适用于高维数据集,但是如果数据集的维度过高,UMAP 算法可能需要较长的计算时间。因此,在使用 UMAP 算法时,应该根据具体情况来调整参数

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值