加速最近的邻居科学空间.cKDT

2024-09-28 17:07:21 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在尝试优化我的最近邻距离代码,我需要为同一数据集的多次迭代计算这些代码

我正在计算数据集A中的点到数据集B中的点的最近邻距离。两个数据集都包含~(1000-2000)个二维点。虽然数据集A中的点保持不变,但对于数据集B(~100000)、B0、B1、…B100000,我有很多不同的迭代。我想知道,如果A保持不变,我是否能以某种方式加快迭代速度。你知道吗

计算我使用的最近邻距离

for i in range(100000):
   tree = spatial.cKDTree(B[i])
   mindist1, minid = tree.query(A)   
   score[i] = np.mean(mindist1**4))**0.25
   # And some other calculations
   ...

如果A在整个循环中保持不变,我想知道是否有办法加快速度。在我看来,考虑到a是相同的,应该有一个更聪明的方法来做到这一点。你知道吗


Tags: 数据代码intree距离for方式range