如何区分两个中文句子的相似度,请给出python代码实现
时间: 2023-06-06 19:07:55 浏览: 103
您好,关于您提出的问题,我可以为您提供一些参考。
中文句子相似度的计算方法有很多种,这里介绍一种基于余弦相似度的方法。该方法将两个文本向量化,然后计算向量间的余弦值,来衡量两个文本之间的相似度。
以下是一段Python代码实现,基于jieba分词和sklearn库:
``` python
import jieba
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
# 定义文本列表
texts = ['我喜欢吃蛋糕', '我不喜欢吃蛋糕', '我喜欢吃冰淇淋']
# 将列表中的文本进行分词
texts = [' '.join(jieba.cut(text)) for text in texts]
# 将分词后的文本向量化
vectorizer = TfidfVectorizer()
vectors = vectorizer.fit_transform(texts).toarray()
# 计算余弦相似度
similarity = cosine_similarity(vectors)
# 打印结果
print(similarity)
```
在上述代码中,我们首先将中文句子进行分词,并将分词结果用空格拼接起来。然后,利用TfidfVectorizer对分词结果进行向量化处理,得到向量表示。最后,利用cosine_similarity计算两个向量之间的余弦相似度。
以上是一种基本方法,您可以根据实际需求进行修改和改进。
希望能对您有所帮助。