探究余弦距离

探究余弦距离

《百面机器学习》笔记

余弦相似度可以作分析两个特征向量之间的相似性的一种度量指标。
由点积 a ∗ b = ∣ ∣ a ∣ ∣ ∗ ∣ ∣ b ∣ ∣ cos ⁡ θ a*b=||a|| * ||b|| \cos\theta ab=abcosθ可知两个向量的夹角的余弦值为
cos ⁡ θ = a b ∣ ∣ a ∣ ∣ 2 ∣ ∣ b ∣ ∣ 2 \cos\theta=\frac{ab}{||a||_2||b||_2} cosθ=a2b2ab
因此余弦相似度的取值范围为 [ − 1 , 1 ] [-1, 1] [1,1] 相同的相似度为1。

而余弦距离 d i s t ( A , B ) = 1 − cos ⁡ θ dist(A,B)=1-\cos\theta dist(A,B)=1cosθ, 因此余弦距离的取值范围为 [ 0 , 2 ] [0, 2] [0,2],距离等于0则说明两个向量是相等的。

向量归一化后的欧式距离与余弦距离的关系

向量归一化可得 ∣ ∣ A ∣ ∣ 2 = 1 , ∣ ∣ B ∣ ∣ 2 = 1 ||A||_2=1, ||B||_2=1 A2=1,B2=1, 因此余弦距离则为: d i s t ( A , B ) = 1 − A B dist(A, B)=1-AB dist(A,B)=1AB
归一化后的欧氏距离为 ∣ ∣ A − B ∣ ∣ 2 = ∣ ∣ A ∣ ∣ 2 2 + ∣ ∣ B ∣ ∣ 2 2 − 2 A B = 2 − 2 A B = 2 ( 1 − A B ) ||A-B||^2=||A||_2^2+||B||_2^2-2AB=2-2AB=2(1-AB) AB2=A22+B222AB=22AB=2(1AB)
即:欧氏距离 ∣ ∣ A − B ∣ ∣ = 2 ( 1 − A B ) = 2 ( 1 − d i s t ( A , B ) ) ||A-B||=\sqrt{2(1-AB)}=\sqrt{2(1-dist(A,B))} AB=2(1AB) =2(1dist(A,B))
这就说明了,向量归一化后,欧氏距离与余弦距离存在单调关系。

余弦距离不是一个严格定义的距离

根据数学上的定义,在一个集合中,如果一对元素均可确定一个实数,使得三条距离公式(非负性,对称性,三角不等式)成立,则该实数可称为这对元素之间的距离。

1.非负性
由上面的余弦距离可以知道,余弦距离的取值范围为 [ 0 , 2 ] [0, 2] [0,2],这就满足了非负性的性质。

2.对称性
d i s t ( A , B ) = 1 − cos ⁡ θ = ∣ ∣ A ∣ ∣ 2 ∣ ∣ B ∣ ∣ 2 − A B ∣ ∣ A ∣ ∣ 2 ∣ ∣ B ∣ ∣ 2 = ∣ ∣ B ∣ ∣ 2 ∣ ∣ A ∣ ∣ 2 − B A ∣ ∣ B ∣ ∣ 2 ∣ ∣ A ∣ ∣ 2 = d i s t ( B , A ) dist(A, B)=1-\cos\theta \\\\\\\\\\ = \frac{||A||_2||B||_2 - AB}{||A||_2||B||_2} \\\\\\\\\\ = \frac{||B||_2||A||_2 - BA}{||B||_2||A||_2} \\\\\\\\\\ = dist(B, A) dist(A,B)=1cosθ=A2B2A2B2AB=B2A2B2A2BA=dist(B,A)
由于 d i s t ( A , B ) = d i s t ( B , A ) dist(A, B)=dist(B, A) dist(A,B)=dist(B,A),因此满足对称性。

3.三角不等式
例子: A = ( 1 , 0 ) , B = ( 1 , 1 ) , C = ( 0 , 1 ) A=(1, 0), B=(1, 1), C=(0,1) A=(1,0),B=(1,1),C=(0,1),则有
d i s t ( A , B ) = 1 − 2 2 dist(A,B)=1-\frac{\sqrt{2}}{2} dist(A,B)=122
d i s t ( B , C ) = 1 − 2 2 dist(B,C)=1-\frac{\sqrt{2}}{2} dist(B,C)=122
d i s t ( A , C ) = 1 dist(A,C)=1 dist(A,C)=1
因此, d i s t ( A , B ) + d i s t ( B , C ) = 2 − 2 &lt; 1 = d i s t ( A , C ) dist(A,B)+dist(B,C)=2-\sqrt{2}&lt;1=dist(A,C) dist(A,B)+dist(B,C)=22 <1=dist(A,C)
因此,余弦距离是不满足三角不等式的性质的。

总结
余弦距离不是一个严格定义的距离,但是却可以很有效的体现特征向量方向上的相对差异。

  • 3
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值