余弦相似度是越相似越大还是越小?
时间: 2025-03-05 20:07:47 浏览: 12
### 余弦相似度计算原理
在多维空间中,两个向量之间的夹角可以用来衡量这两个向量的方向差异。对于文本或其他形式的数据表示成的高维向量来说,可以通过测量这些向量间的角度来评估其相似性。
具体而言,给定两个非零n维向量A和B,则两者之间夹角θ的余弦值定义如下:
\[
cos(\theta)= \frac{A·B}{||A|| ||B||}
\]
其中\( A·B=\sum_{i=1}^{n}(a_i*b_i)\),即两向量对应分量乘积之和;而 \( ||A|| = \sqrt{\sum a_i^2}\), 表示向量长度(模)。当两个向量完全相同的时候,它们之间的角度为0°,此时 cos(θ)=1; 当二者正交时,cos(θ)=0; 如果方向相反则cos(θ)=-1[^1]。
#### Python实现代码
下面是一个简单的Python函数用于计算两个向量间的余弦相似度:
```python
import numpy as np
def cosine_similarity(vec_a, vec_b):
dot_product = np.dot(vec_a, vec_b)
norm_a = np.linalg.norm(vec_a)
norm_b = np.linalg.norm(vec_b)
return dot_product / (norm_a * norm_b)
```
此段程序接收两个输入参数vec_a 和 vec_b作为待比较的对象,并返回一个介于[-1,+1]区间内的浮点数代表二者的相似程度。数值越接近±1表明更加相像或反向一致;靠近0意味着几乎不相关[^4]。
阅读全文
相关推荐


















