【发布时间】:2015-12-05 09:06:55
【问题描述】:
我正在使用 python 和 scikit-learn 来查找两个字符串(特别是名称)之间的余弦相似度。该程序能够找到两个字符串之间的相似度分数,但是当字符串被缩写时,它会显示一些不需要的输出。
例如- String1 ="K KAPOOR",String2="L KAPOOR" 这些字符串的余弦相似度得分为1(最大值),而两个字符串的名称完全不同。有没有办法修改它,以获得一些想要的结果。
我的代码是:
# -*- coding: utf-8 -*-
"""
Created on Wed Sep 9 14:40:21 2015
@author: gauge
"""
from sklearn.feature_extraction.text import TfidfVectorizer
from sklearn.metrics.pairwise import cosine_similarity
documents=("K KAPOOR","L KAPOOR")
tfidf_vectorizer=TfidfVectorizer()
tfidf_matrix=tfidf_vectorizer.fit_transform(documents)
#print tfidf_matrix.shape
cs=cosine_similarity(tfidf_matrix[0:1],tfidf_matrix)
print cs
【问题讨论】:
标签: python machine-learning scikit-learn cosine-similarity