TF-IDF vs TF 分类

数据挖掘 分类 tfidf
2022-01-27 21:14:03

假设我有一个包含 1,000 个文档的数据集。

每个文档都是餐厅评论(文本相对较短),并带有标签 {Negative, Indifferent, Positive}。

假设数据集有 600 条正面评论、200 条中立评论和 200 条负面评论。

我想训练一个分类器根据评论的文本将评论分类为负面、无关紧要或正面。

暂时不使用任何词嵌入,最好的方法是使用 TF-IDF 作为特征工程。

然而,当我更仔细地思考这一点时,我并不完全确定这是否是与简单的词频 (tf) 模型相比的最佳方法。

具体来说,TF-IDF 模型将采用与任何标签/类别无关的术语的逆文档频率。

因此,在上面的示例中,如果许多正面评论中包含“正面”这个词,那么这个词将自动修改(并且通常会降低)TF-IDF 分数,这仅仅是因为数据集中的大多数文档都是正面的(600文件)。

另一方面,如果使用简单的 TF,那么“正面”这个词将具有非常高的价值,并且很明显它与正面评价直接相关。

为什么在这种情况下 TF-IDF 必然是最好的选择?

1个回答

因此,在上面的示例中,如果许多正面评论中包含“正面”这个词,那么这个词将自动修改(并且通常会降低)TF-IDF 分数,这仅仅是因为数据集中的大多数文档都是正面的(600文件)。

您正在考虑将“积极”一词作为示例,因为您是人类并且知道该选择什么。在英语中出现频率最高的词是停用词:the, a, is... 这些都是无用的,会在您的模型中添加大量噪音。您可以使用预定义的停用词列表来删除它们,但是对于那些不是停用词但足够频繁的词呢,例如foodplacechef ......这就是 IDF 提供帮助的地方。