参考文献:
https://www.zhihu.com/question/19640394
https://blog.csdn.net/qq_29678299/article/details/88750005
对于2个向量A和B,其余弦相似度即2个向量夹角的余弦。关注的是向量之间的角度关系,并不关心他们的绝对大小,其取值范围是【-1,1】。当一对文本相似度长度差异很大,但内容相近时,如果使用余弦相似度的话,他们之间的夹角可能很小,因而相似度高。此外,在文本,图像,视频等领域,研究的对象的特征维度往往很高,余弦相似度在高维情况下依然褒词相同时为1,正交时为0,相反时未-1的特性,而欧氏距离的数值则受维度的影响,范围不确定,并且含义也比较模糊。
总体来说,欧式距离体现在数值上的绝对差异,而余弦距离是体现在方向上的相对差异。
根据余弦相似度计算相似文本时,需要两两比较,复杂度为Ο(n2)。通常这种比较不能全量比较,可以借助于simhash 的思想,减少搜索空间。但是缺点是存在误差。
但是转为求欧式距离呢,就可以上一个非常好的数据结构,叫KDTree。
在向量归一化的情况下,欧氏距离和余弦距离没有区别。
原文:https://www.cnblogs.com/galios/p/12486636.html