我正在使用LinearSVC将文本数据分类为3个类。输入数据是每个单词的tfidf分数。我很想看到单词对分类的“贡献”。第一个问题是我可以使用coef_吗?文档说明:
coef_:array,shape = [n_features] if n_classes == 2 else [n_classes,n_features]
所以,我假设“n_classes”对应于文档可以分类的3个类中的每一个,而n_features是我的tfidf特征的系数值。假设是这样的,那么coef_中的类的顺序是什么?如何将数组中的每一行与我的一个类匹配?
感谢,
尼克
答案 0 :(得分:1)
如果不深入研究源代码,我相信您的问题有两个答案:
对类进行排序。因此,如果您有班级['a','b','C'],那么您的班级顺序将是['C','a','b']。 (这可能看起来很奇怪,但是在Python和.sort()中创建该列表。这就是顺序。)
有一个主要是未记录的类成员LinearSVC().classes_
,它保存了该类使用的顺序(参见this method documentation)。