文本余弦相似度 python 代码
时间: 2023-05-15 09:01:33 浏览: 265
Python-余弦定理计算文章相似度
文本余弦相似度是一种常用的文本相似度计算方法,常用于比较两个文本之间的相似度。Python提供了一些工具和库来计算文本余弦相似度,其中较为常见的有cosine_similarity方法,学习这些方法可以极大地提高我们的文本相似度计算应用程序。
以下是Python代码实现文本余弦相似度:
1、首先为Python代码导入所需的库,如nltk、sklearn、numpy等库。
import numpy as np
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.metrics.pairwise import cosine_similarity
2、接下来实现文本余弦相似度计算的函数,其中的参数 a和 b 是两个文本字符串分别为 a 和 b。
def cos_sim(a, b):
vectorizer = CountVectorizer().fit_transform([a, b])
vectors = vectorizer.toarray()
return cosine_similarity(vectors)[0][1]
3、最后我们来测试一下这个函数的运行结果。
print(cos_sim('hello world', 'world hello'))
print(cos_sim('cat', 'dog'))
输出结果为:
1.0
0.0
可以看出,"hello world"和"world hello"这两个字符串的余弦相似度为1,因为它们之间的距离为0。而"cat" 和 "dog"之间的余弦相似度则为0,因为它们之间没有任何共同的单词。
阅读全文