【发布时间】:2020-04-26 18:26:13
【问题描述】:
我正在尝试计算两个 INDArray 之间的欧几里德距离(假设 INDArray 是 numpy 数组的替代品)。在python中,我实现了这一点:
import numpy as np
from scipy.spatial.distance import cdist
arr1 = np.array(of some size)
arr2 = np.array(of some size)
ans = cdist(arr2 , arr1)
示例:
arr1 = [[20.73 62.67 ] # each row is a vector. so arr1 has 3 2-Dimensional vectors
[93.47 13.83]
[50.01 16.60]]
arr2 = [[20.66 6.09] # arr2 has 2 2-Dimensional vectors
[51.79 85.14]]
ans = [[56.57 73.21 31.17] # distances of vectors of arr2 with arr1
[38.33 82.59 68.55]]
请帮助我在 java 中实现这一点。我对java不太了解。到目前为止,我得出的结论是 Nd4J 可以做到这一点。但我不知道怎么做。
注意: 不需要使用 for loops 计算欧几里得。实际上,我正在尝试查看矢量化对欧几里德距离计算的性能影响。我知道 Nd4J 像 Numpy 一样支持 SIMD 和矢量化。对于details
【问题讨论】:
标签: java deeplearning4j nd4j