结合你的学习和研究经历,探讨一下为什么一些场景中使用余弦相似度而不是欧氏距离?

在高维特征空间中,余弦相似度常用于衡量向量间的方向一致性,忽略大小,适合内容相近长度差异大的文本相似度分析。与之相比,欧氏距离关注数值差异,适用于考虑绝对差异的场景。例如,在文本相似度计算和用户行为分析中,余弦相似度更适用;而在评估商品价格变化或用户价值时,欧氏距离能更好地反映差异。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

场景描述:

在机器学习问题中,通常将特征表示为向量的像是,所以在分析两个特征向量之间的相似性时,常用余弦相似度来表示。余弦相似度的取值范围是【-1,1】,相同的2个向量之间的相似度为1.如果希望得到类似于距离的表示,将1-减去余弦相似度即位余弦距离,余弦距离的取值范围【0,2】,2个相同的向量的余弦距离为0.

 

结合你的学习和研究经历,探讨一下为什么一些场景中使用余弦相似度而不是欧氏距离?

对于2个向量A和B,其余弦相似度即2个向量夹角的余弦。关注的是向量之间的角度关系,并不关心他们的绝对大小,其取值范围是【-1,1】。当一对文本相似度长度差异很大,但内容相近时,如果使用余弦相似度的话,他们之间的夹角可能很小,因而相似度高。此外,在文本,图像,视频等领域,研究的对象的特征维度往往很高,余弦相似度在高维情况下依然褒词相同时为1,正交时为0,相反时未-1的特性,而欧氏距离的数值则受维度的影响,范围不确定,并且含义也比较模糊。

 

在一些场景中,例如word2vec ,其向量模长是经过归一化,此时欧氏距离和余弦距离有着单调的关系。

在此场景下,如果选择距离最小(相似度最大)的近邻,那么使用余弦距离和欧氏距离结果是相同的。

总体来说,欧式距离体现在数值上的绝对差异,而余弦距离是体现在方向上的相对差异。

例如:统计2部剧的用户观看行为,用户A 的观看向量为(0,1)用户B的为(1.0)。。此时二者的余弦距离很大,而欧式距离很小,我们分析2个用户对于不同视频的偏好,更关注相对差异,显然用余弦距离。当我们分析用户的活跃度,以登录次数和观看时长作为特征时,余弦距离会认为(1.10)和(10,100)两个用户余弦距离很近,显然2个用户活跃度有着极大的差异的,此时我们更要关注绝对差异,应当使用欧式距离。特定的度量用于特定的问题。

 

 

最近在做“判断两段文本的语义相似度”的事情,实验中用doc2vec做文本向量化,用余弦值衡量文本相似度。 
如向量的维度是3,有三段文本a、b、c,文本向量化之后的结果假如如下:a=(1,0,0)、

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值