小编jev*_*nio的帖子

优化汉明距离 Python

我有大约 1M 的二进制 numpy 数组,我需要它们之间的汉明距离才能找到 k-最近邻,我得到的最快方法是使用 cdist,返回一个带距离的浮点矩阵。

由于我没有足够的内存来获得 1Mx1M 的浮点矩阵,所以我当时正在做一个元素,如下所示:

from scipy.spatial Import distance
Hamming_Distance = distance.cdist(array1,all_array,'hamming')
Run Code Online (Sandbox Code Playgroud)

问题是每个 Hamming_Distance 需要 2-3 秒,1m 文档需要一个永恒的时间(我需要将它用于不同的 k)。

有什么最快的方法吗?

我正在考虑多处理或在 C 上进行,但我在理解它如何在 python 上进行多处理时遇到了一些麻烦,我不知道如何将 C 代码与 Python 代码混合。

python optimization numpy knn hamming-distance

1
推荐指数
1
解决办法
2124
查看次数

标签 统计

hamming-distance ×1

knn ×1

numpy ×1

optimization ×1

python ×1