gpt4 book ai didi

python - 计算成对距离矩阵的有效方法?

转载 作者:太空狗 更新时间:2023-10-30 03:03:16 24 4
gpt4 key购买 nike

我有一个对象列表 list_of_objects,我使用 scipy.cluster.hierarchy.linkage() 将它们聚集在一起。作为输入 scipy.cluster.hierarchy.linkage() 采用压缩距离矩阵。我通过使用 itertools.combinations 来计算压缩距离矩阵以仅比较唯一组合:

distances = map(do_comparison, itertools.combinations(list_of_objects, 2))

即便如此,它所花费的时间随着 list_of_objects 的大小而快速增长。有更快的方法吗?

最佳答案

如果存在距离不再重要的临界截止点(数据相关的答案),您可以尝试使用 scipy.spatial.KDTree.sparse_distance_matrix 中的备用矩阵表示. KDTree 的知识应该会显着减少计算更远距离的时间。

要使其与您可能需要注意的聚类一起使用:

Computes a distance matrix between two KDTrees, leaving as zero any distance greater than max_distance.

并将零更改为 np.inf

关于python - 计算成对距离矩阵的有效方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19728908/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com