文本分类中,为什么要用卡方检验提取特征词而用TFIDF计算特征词权重,而不是用一种方法同时完成?

按理说这两种算法都可以区分类别,求出的值也可以衡量特征词的重要程度,为什么好多都是用两种方法?我在CSDN博客里看到这样的解释:“用CHI是提取类别的…
关注者
81
被浏览
18,547

3 个回答

一般我们选择卡方统计量(chi-square statistic, CHI)技术来实现选择,这里根据计算公式:

其中,公式中各个参数的含义,说明如下:

  • N:训练数据集文档总数
  • A:包词词条t,同时属于类别c的文档的数量
  • B:包含词条t,但是不属于类别c的文档的数量
  • C:属于类别c,但是不包含词条t的文档的数量
  • D:不属于类别c,同时也不包含词条t的文档的数 在文本分类的特征选择阶段中,我们主要关心一个问题:词条t与类别C是否相互独立 1)相互独立,说明词条t对类别c完全没有表征能 2)不独立,说明词条t对类别c有一定的表征能力

与一般的卡方检验不同,此处不用设定阈值。通过选择文档分类中最相关的词语,以此我们做出原假设:词条t与类别c不相关; 选择的过程也变成了为每个词计算它与类别c的卡方值,从大到小排个序(此时卡方值越大越相关),取前k个就可以 。

我们再来看看TFIDF,我们都知道TF-IDF=词频(TF)*逆文档频率(IDF),也就是说词频越高文档的TF-IDF值就很可能高。回过头来我们看卡方检验,CHI的缺点就是夸大了低频次的作用,因为A,B,C,D只标记词在某一文档中出现与否,不标记词在某一个文档中出现的频率,因此CHI适合用来进行特征词的提取,即适合进行文档的分类特征词语的提取。而TF-IDF的公式,我们发现特征权重的提取更适合采用TF-IDF的方法。

tf-idf倾向于选择区有文档区分度的词,而卡方倾向于选择有类别区分度的词。而我们的目标是分类,当然要选择有类别区分度的词。

比如,镜头和华为这两个词的文档区分度都很高。然而,华为可能出现在“科技”, “摄影”, "生活“, "地区"等多个类别中,镜头基本上都集中在摄影这个类别中。我们可以很大程度上这样判断,如果文章中出现了”镜头“一词,那么它很可能是属于摄影分类的。

因为卡方有”低频词缺陷”, 不能表征词在文档内的重要程度,因此,tf-idf是个不错的补充。

上文提到了刘知远的知乎回答,建议读一下。