【发布时间】:2019-02-05 21:49:02
【问题描述】:
我正在使用mutual_info_classif 来确定二进制文本分类任务中最重要的单词:
mi_score = mutual_info_classif(X, y)
但上面给出了一个特征分数数组,没有参考相应的类
有没有办法使用 MI 获得每类最重要的功能?
P.s.,我已经尝试过 Chi2,但它为两个类提供了相同的功能等级
【问题讨论】:
标签: scikit-learn text-classification
我正在使用mutual_info_classif 来确定二进制文本分类任务中最重要的单词:
mi_score = mutual_info_classif(X, y)
但上面给出了一个特征分数数组,没有参考相应的类
有没有办法使用 MI 获得每类最重要的功能?
P.s.,我已经尝试过 Chi2,但它为两个类提供了相同的功能等级
【问题讨论】:
标签: scikit-learn text-classification
互信息是衡量两个变量之间依赖关系的指标。在您的情况下,在每个属性变量和“类”变量之间。当属性变量创建目标变量的更好拆分时,互信息将给出更高的分数。这意味着你只能得到一个分数来描述属性和类之间的强度。最重要的特征是最能区分所有类别的特征。
如果您有一个具有多个标签的类(不是二元类),您可以使用虚拟变量为每个标签创建一个新的类变量。 例如,假设您的班级名称是 CLASS,它包含 3 个不同的标签:“红色”、“绿色”和“蓝色”。创建 3 个新的目标变量,第一个将被称为“Is_Red”,如果 CLASS=="Red" 或“No”,它将保持“是”,否则。通过这种方式,您可以看到哪个属性最能区分类的每个特定实例。您必须运行每个新类变量的互信息。
【讨论】: