如何使用 tfidf 矢量化器比较两个文本文档?

我有两个不同的文本,我想使用 tfidf 矢量化进行比较。我正在做的是:

  1. 标记每个文档

  2. 使用 TFIDFVectorizer.fit_transform(tokens_list) 进行矢量化

现在我在第 2 步之后得到的向量具有不同的形状。但根据概念,我们应该对两个向量具有相同的形状。只有这样才能比较向量。

我究竟做错了什么?请帮忙。


互换的青春
浏览 203回答 1
1回答

白猪掌柜的

正如 G. Anderson 已经指出的那样,为了帮助未来的人,当我们在文档 D1 上使用 TFIDFVectorizer 的 fit 函数时,这意味着对于 D1,构建了词袋。transform() 函数计算词袋中每个词的 tfidf 频率。现在我们的目标是比较文档 D2 和 D1。这意味着我们想看看 D1 有多少单词与 D2 匹配。这就是为什么我们在 D1 上执行 fit_transform() 然后只有在 D2 上的 transform() 函数会应用 D1 的词袋并计算 D2 中标记的逆频率。这将给出 D1 与 D2 的相对比较。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python