用kmeans Lloyds算法计算距离

时间:2020-01-31 12:31:58

标签: python numpy

我正在尝试使用numpy计算矩阵X(形状N,D)和矩阵mu(形状K,D)的每个点之间的距离:

np.array([[np.linalg.norm(x - m) for m in mu] for x in X])

这非常慢。有没有更快的方法来获得相同的结果?

1 个答案:

答案 0 :(得分:0)

我们可以将一个矩阵的尺寸扩展到第三维,然后计算距离:

np.linalg.norm(X - mu[:,None], axis=-1, ord=2).T