我有一个N x D
维度特征,我需要根据它们与1 x D
维度向量的距离进行排名。在python中实现它的任何快速方法都不会递归地应用argmin
?
谢谢!
答案 0 :(得分:3)
真正简单的是Squared Euclidean Distance,它的实现就像:
In []: F= randn(5, 3)
In []: t= randn(1, 3)
In []: ((F- t)** 2).sum(1)
Out[]: array([ 8.80512, 4.61693, 2.6002, 3.3293, 12.41800])
其中F
是要素,t
是目标向量。因此排名将是:
In []: ((F- t)** 2).sum(1).argsort()
Out[]: array([2, 3, 1, 0, 4])
但是,如果您能够对案例进行更多描述,可能会有更合适的衡量标准,例如Mahalanobis distance。