标签: python scikit-learn scipy cosine-similarity
它看起来像scipy.spatial.distance.cdist余弦相似距离:
link to cos distance 1
1 - u*v/(||u||||v||)
与 sklearn.metrics.pairwise.cosine_similarity
link to cos similarity 2
u*v/||u||||v||
有人知道使用不同定义的原因吗?
答案 0 :(得分:2)
很好的问题,但是的,这是两件不同的事情,但由以下等式联系:
余弦距离= 1-余弦相似度
但是为什么?
通常,人们使用余弦相似度作为向量之间的相似度度量。现在,距离可以定义为1-cos_similarity。
这背后的直觉是,如果2个向量完全相同,则相似度为 1 (角度= 0),因此,距离是 0 (1-1 = 0)。
类似地,您可以为所得相似度值范围定义余弦距离。
余弦相似度范围:-1表示完全相反,1表示完全相同,0表示正交。
参考文献:Scipy wolfram