不使用scipy python计算距离矩阵

时间:2018-11-22 16:40:02

标签: python matrix scipy matrix-multiplication

我想了解代码的特定部分,该部分计算两个2d之间的距离矩阵。矩阵。

更聪明,最简单的方法是使用像这样的代码scipy

import scipy
import scipy.spatial

D = scipy.spatial.distance.cdist(X_norm, X_norm)

。但是还有另一种我需要理解的方法。是这个

Dalt = np.sqrt(((X_norm ** 2).sum(axis=1).reshape((1, len(X_norm))) \
      + (X_norm ** 2).sum(axis=1).reshape((len(X_norm), 1)) \
      - 2 * numpy.dot(X_norm, X_norm.T)) + 1e-7)

print(((Dalt - D) ** 2).mean())

我真正不明白的是他最后添加这部分时的最后一部分

+ le-7)

0 个答案:

没有答案