Python 什么';这些np.linalg.norm方法之间的区别是什么
我有这两种方法,它们来自KNN实现。我推测它们是两个距离测量值,但我不理解它们之间的区别。我已经试着查过这个方法,但没有任何运气Python 什么';这些np.linalg.norm方法之间的区别是什么,python,syntax,euclidean-distance,Python,Syntax,Euclidean Distance,我有这两种方法,它们来自KNN实现。我推测它们是两个距离测量值,但我不理解它们之间的区别。我已经试着查过这个方法,但没有任何运气 def euclideanDistance(in1,in2): return np.linalg.norm(in1-in2) def L1Distance(in1,in2): return np.linalg.norm(in1-in2,1) 被调用的函数是相同的,但在第二种情况下,会添加一个附加参数来更改其行为 第二个关键字参数是order,如果这
def euclideanDistance(in1,in2):
return np.linalg.norm(in1-in2)
def L1Distance(in1,in2):
return np.linalg.norm(in1-in2,1)
被调用的函数是相同的,但在第二种情况下,会添加一个附加参数来更改其行为 第二个关键字参数是order,如果这个参数没有输入,它将计算欧几里德范数sqrt(in1^2-in2^2)
如果ord=1(您的情况),则计算L1范数,即abs(in1-in2)vs(又名欧几里德)范数。文档中明确说明了这一点:在第一种情况下,
ord=None
,在第二种情况下,ord=1
。你到底不明白其中的哪一部分?同样值得一读。