本文介绍了在朴素贝叶斯中获得功能重要性的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的问题与此完全相似,如何在朴素贝叶斯中获得特征重要性?
My problem is exactly similar to this,How to get feature Importance in naive bayes?
但是当我运行代码
neg_class_prob_sorted = NB_optimal.feature_log_prob_[0, :].argsort()
pos_class_prob_sorted = NB_optimal.feature_log_prob_[1, :].argsort()
print(np.take(count_vect.get_feature_names(), neg_class_prob_sorted[:10]))
print(np.take(count_vect.get_feature_names(), pos_class_prob_sorted[:10]))
它总是打印带有相同首字母的单词
it always prints words with same initials
['aafco' 'misfit' 'misfir' 'miseri' 'miser' 'misconcept' 'miscarriag'
'misc' 'mirin' 'minuscul']
['aafco' 'metrx' 'meticul' 'methood' 'metaplus' 'metaphor' 'mestemach'
'messiest' 'mesmer' 'mesa']
有什么更好的方法可以打印出与正反两类相对应的重要特征?
Is there any better way I can print the important features corrosponding to positive and negative class?
推荐答案
important_features = pd.DataFrame(data = np.transpose(model.fit(fdata,y_train).feature_log_prob _).astype("float32"),index = fdata.columns)
important_features= pd.DataFrame(data=np.transpose(model.fit(fdata, y_train).feature_log_prob_).astype("float32"),index=fdata.columns)
这篇关于在朴素贝叶斯中获得功能重要性的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!