我想了解代码的特定部分,该部分计算两个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)