我有两个不同的文本,我想使用 tfidf 矢量化进行比较。我正在做的是:标记每个文档使用 TFIDFVectorizer.fit_transform(tokens_list) 进行矢量化现在我在第 2 步之后得到的向量具有不同的形状。但根据概念,我们应该对两个向量具有相同的形状。只有这样才能比较向量。我究竟做错了什么?请帮忙。
1 回答
白猪掌柜的
TA贡献1893条经验 获得超10个赞
正如 G. Anderson 已经指出的那样,为了帮助未来的人,当我们在文档 D1 上使用 TFIDFVectorizer 的 fit 函数时,这意味着对于 D1,构建了词袋。
transform() 函数计算词袋中每个词的 tfidf 频率。
现在我们的目标是比较文档 D2 和 D1。这意味着我们想看看 D1 有多少单词与 D2 匹配。这就是为什么我们在 D1 上执行 fit_transform() 然后只有在 D2 上的 transform() 函数会应用 D1 的词袋并计算 D2 中标记的逆频率。这将给出 D1 与 D2 的相对比较。
添加回答
举报
0/150
提交
取消