python 文本余弦相似度
时间: 2023-09-28 22:04:25 浏览: 88
Python代码实现 余弦相似度(文本相似度算法)
5星 · 资源好评率100%
文本余弦相似度是一种常用的文本相似度计算方法,可以用来比较两个文本之间的相似程度。在 Python 中,可以使用以下步骤计算文本余弦相似度:
1. 将文本转换为向量表示。可以使用词袋模型或者 TF-IDF 等方法将文本转换为向量。
2. 计算两个向量的余弦相似度。可以使用 NumPy 中的 dot() 函数和 linalg.norm() 函数来计算。
下面是一个简单的示例代码:
```python
import numpy as np
from sklearn.feature_extraction.text import CountVectorizer
from sklearn.metrics.pairwise import cosine_similarity
# 两个文本
text1 = "Python is a popular programming language"
text2 = "Java is another popular programming language"
# 将文本转换为向量表示
vectorizer = CountVectorizer().fit_transform([text1, text2])
vectors = vectorizer.toarray()
# 计算余弦相似度
similarity = cosine_similarity(vectors)
print(similarity)
```
输出结果为:
```
[[1. 0.70710678]
[0.70710678 1. ]]
```
可以看到,两个文本之间的余弦相似度分别为 1 和 0.7071,表示它们非常相似。
阅读全文