Python计算余弦相似度

简介: Python计算余弦相似度

余弦相似度常用在文本分类、图片分类等应用中,来计算两个文本或两个图像之间的相似度。


如下图,向量image.png


20200809104801130.pngimage.png


对于n 维向量image.png

image.png

余弦相似度的取值范围在-1到1之间。余弦值越接近1,也就是两个向量越相似,完全相同时数值为1;相反反向时为-1;正交或不相关是为0。


求余弦相似度需要用到np.linalg.norm 操作,来求向量的范式,默认是L2范式,等同于求向量的欧式距离。

import numpy as np
t1  = np.array([-0.4,0.8,0.5,-0.2,0.3])
t2  = np.array([-0.5,0.4,-0.2,0.7,-0.1])
def cos_sim(a, b):
    a_norm = np.linalg.norm(a)
    b_norm = np.linalg.norm(b)
    cos = np.dot(a,b)/(a_norm * b_norm)
    return cos
print(cos_sim(t1,t2))

输出:0.23612240736068565


相关文章
|
1月前
|
算法 索引 Python
使用Python实现PageRank计算
使用Python实现PageRank计算
|
1月前
|
存储 Python
python计算两个数的和
python计算两个数的和
|
7天前
|
Python Serverless API
Python风险价值计算投资组合VaR、期望损失ES
Python风险价值计算投资组合VaR、期望损失ES
23 0
Python风险价值计算投资组合VaR、期望损失ES
|
17天前
|
算法 Python
78: 计算生日是星期几(python)
78: 计算生日是星期几(python)
|
1月前
|
Python
Python函数之计算规则图形的面积
Python函数之计算规则图形的面积
15 0
|
1月前
|
Python
Python小技巧:计算素数个数
Python小技巧:计算素数个数
|
1月前
|
机器学习/深度学习 人工智能 BI
Python计算余弦相似度
Python计算余弦相似度
|
1月前
|
索引 Python
Python阶乘计算
Python阶乘计算
|
1月前
|
存储 Python
Python计算三角形的面积
Python计算三角形的面积
|
1月前
|
数据挖掘 Python
Python计算平均值
Python计算平均值

热门文章

最新文章