Как похожие документы, преобразованные в TFIDF-ценный вектор, выглядят в векторном пространстве - PullRequest
0 голосов
/ 13 июня 2018

Это может быть странный вопрос, но я не могу не удивляться.Если позволите, скажем, есть три документа:

  • d1 = "Меня зовут Стефан."
  • d2 = "Меня зовут Дэвид."
  • d3 = "Привет, как дела? "

И если я преобразую все эти 3 документа в TFIDF значимые векторы в векторном пространстве, будут ли документы d1 и d2 ближе друг к другутогда документы d2 и d3 например?Извините, если это глупый вопрос, но мне бы очень хотелось как-то это визуализировать, чтобы лучше его понять.Заранее спасибо!

1 Ответ

0 голосов
/ 13 июня 2018

Да, они будут ближе.

Демо:

In [21]: from sklearn.feature_extraction.text import TfidfVectorizer

In [22]: from sklearn.metrics.pairwise import cosine_similarity

In [23]: tfidf = TfidfVectorizer(max_features=50000, use_idf=True, ngram_range=(1,3))

In [24]: r = tfidf.fit_transform(data)

In [25]: s = cosine_similarity(r)

In [26]: s
Out[26]:
array([[1.        , 0.53634991, 0.        ],
       [0.53634991, 1.        , 0.        ],
       [0.        , 0.        , 1.        ]])

In [27]: data
Out[27]: ['My name is Stefan.', 'My name is David.', 'Hello, how are you?']
...