我有60000个784维的向量。这个数据有10个类。你知道吗
我必须计算一个函数,去掉一个维度,然后再次计算距离度量。这个函数计算每个向量到它的类的平均值的距离。在代码中:
def objectiveFunc(self, X, y, indices):
subX = np.array([X[:,i] for i in indices]).T
d = np.zeros((10,1))
for n in range(10):
C = subX[np.where(y == n)]
u = np.mean(C, axis = 0)
Sinv = pinv(covariance(C))
d[n] = np.mean(np.apply_along_axis(mahalanobis, axis = 1, arr=C, v=u, VI=Sinv))
在每次迭代过程中,索引被输入并移除一个索引。你知道吗
你可以想象,在计算马氏距离的过程中,我计算了很多单独的分量。我有没有办法存储所有784组件的距离?你知道吗
或者,计算马氏距离最快的方法是什么?你知道吗
首先,为了更容易理解,这是马氏距离公式:
因此,要根据每个元素的类别计算其马氏距离,我们可以:
然后可以创建
for
语句来计算所有距离。例如,类0
:相关问题 更多 >
编程相关推荐