matlab中bp神经网络有欧氏距离,深度学习理论方法-余弦相似度计算实战与欧几里得距离概述...

借助三维坐标系来看下欧氏距离和余弦相似度的区别

388da5e10f1adeba85aa7f142d3ef49d.png

从图上可以看出欧式距离衡量的是空间中各点之间的绝对距离,和点所在的位置坐标(即个体各维度的特征数值)直接相关,距离越小,两向量之间越相似;而余弦相似度衡量的是空间中两向量之间的夹角,体现的是方向上的差异,夹角越小(余弦相似度越大),两向量之间越相似。如果保持A点的位置不变,B点朝原方向延伸,那么这个时候余弦相似度cosθ是保持不变的,因为夹角不变,而A、B两点间的距离显然在发生改变,这就是欧氏距离和余弦相似度的不同之处。

那么欧式距离和余弦相似度的应用场景是什么呢?

欧氏距离能够体现个体数值特征的绝对差异,所以更多的用于需要从维度的数值大小中体现差异的分析,比如使用用户行为作为指标分析用户价值的相似情况(比较不同用户的消费能力),这属于价值度量;而余弦相似度对绝对数值不敏感,更多的用于使用用户对内容的评分来分析用户兴趣的相似程度(用户是否喜欢某商品),这属于定性度量。

基于欧几里得距离的相似度计算

欧几里得距离是常用的计算距离的公式,它表示三维空间的两个点的真实距离。欧几里得相似度计算是一种基于用户之间直线距离的计算方式,在计算时,不同的物品或者用户可以将其定义为不同的坐标点,而特定的目标定位为坐标原点,欧几里得计算两个点之间的距离公式如下:

60edcfc1a72797125a9949318c8fa584.png

知道了两个坐标之间的直线距离,欧几里得相似度也就很好计算了,与d成反比,即其相似度公式如下:

8075f2b9d1935c6d14a3ba9149cd8398.png

从公式可以看出两个物品或者用户之间的距离越大,则其相似度越小,距离越小则相似度越大。

下表用户与物品评分对应表

物品1

物品2

物品3

物品4

用户1

1

1

3

1

用户2

1

2

3

2

用户3

2

2

1

1

下面分别计算用户1和用户2之间的相似度,通过欧几里得距离公式可得:

0e57584f493d611604a43783a32c9757.png

3c51e761db7e11ea99cfbe838b0b6091.png

从计算结果可以看出,d12的分值大于d13的分值,因此可以得出结论,用户2比用户3更与用户1具有相似性。

基于余弦角度相似度计算

与欧几里得距离相似,余弦相似度也特定目标,即物品或者用户作为坐标上的点,但不是坐标原点。基于此与特定的被计算的目标进行夹角计算。

04a9f8a0e3c494213e46f3987c260897.png

由上图可以看出,如果两个目标较为相似,则其射线形成的夹角较小。如果两个用户不相近,则两条射线形成的夹角较大,因此在使用余弦度量的相似度计算中,可以用夹角的大小来反映目标之间的相似性。计算公式如下:

c630d5cbc56f41f8a803a962c626b4f0.png

在上面用户与物品评分对应表中用户1和用户2之间的相似性,结果如下:

5faf499effd0d3d4a631cb51b9ea6060.png

而用户1和用户3的相似性结果为:

01a73d23319aa612199060bda93dcd78.png

从计算可得,相对于用户3,用户2与用户1更为相似。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值