L2 距离
L2 距离
import numpy as np
def l2(a, b):
a = np.asarray(a, dtype="float32")
b = np.asarray(b, dtype="float32")
return float(np.linalg.norm(a - b))
print(round(l2([0.3, 0.4, 0.5], [0.1, 0.9, 0.2]), 4))归一化后有 ||a-b||² = 2 − 2·cos,两者排序完全一致;按库与数据的便利性选择即可。