使用common_info_classif提取最重要的功能(每个类)

时间:2018-11-12 17:51:48

标签: scikit-learn text-classification

我正在使用mutual_info_classif来确定二进制文本分类任务中最重要的单词:

mi_score = mutual_info_classif(X, y)

但是上面给出了一系列特征评分,而没有参考相应的类

是否有一种方法可以使用MI 每个班级获得最重要的功能?

P.s。,我已经尝试过Chi2,但是两个类的功能等级相同

1 个答案:

答案 0 :(得分:0)

相互信息是2个变量之间依赖性的度量。在您的情况下,请在每个属性变量和“ Class”变量之间。当属性变量创建目标变量的更好分割时,互信息将给出更高的分数。这意味着您只能得到一个描述属性和类之间强度的分数。最重要的功能是最能区分所有类的功能。

如果您的类具有多个标签(不是二进制类),则可以使用伪变量为每个标签创建一个新的类变量。 例如,假设您的类名称为CLASS,并且具有3个不同的标签:“红色”,“绿色”和“蓝色”。创建3个新的目标变量,第一个目标变量将被称为“ Is_Red”,如果CLASS ==“ Red”或“ No”,则将保留“ Yes”。通过这种方式,您可以看到哪个属性最能区分类的每个特定实例。您将必须针对每个新的类变量运行共有信息。