这些 np.linalg.norm 方法有什么区别
What's the difference between these np.linalg.norm methods
我有这两种来自 KNN 实现的方法。我收集到它们是两个距离测量值,但我不明白它们有何不同。我试过查找方法,但没有任何运气。
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)
我有这两种来自 KNN 实现的方法。我收集到它们是两个距离测量值,但我不明白它们有何不同。我试过查找方法,但没有任何运气。
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)