Сходство косинусов с помощью tf-idf: Sklearn

Я пытаюсь найти сходство косинусов между двумя сериями, используя tf-idf, используя sklearn. Но есть случай, когда даже строки не похожи, но их косинусное сходство равно 1.

Вот код:

from sklearn.metrics.pairwise import cosine_similarity
series1 = df['col1']
series2 = df['col2']
vectorizer = TFidfVectorizer()
vectorizer = vectorizer.fit(series1 ,series2)
tf_idf_matrix1 = vectorizer.transform(series1)
tf_idf_matrix2 = vectorizer.transform(series2)
similarity = cosine_similarity(tf_idf_matrix1,tf_idf_matrix2)

За. например:

string1 = 'A B  XYZ'
string2 = 'MN XYZ'

Их оценка - 1. Есть ли какой-либо способ или библиотека, с помощью которых мы можем дать более низкий ранг общей части в строке. Удаление общей части - это один из способов, но она также нужна для сравнения строк.

0 ответов

Другие вопросы по тегам