Sci*_*tas 3 python machine-learning scikit-learn
我正在使用Python 的 sklearn进行文本分类。使用的分类器是MultinomialNB,我向它提供新闻纸文章,其中包括体育、经济等类别。
训练模型后,我使用predictandpredict_proba函数用一些选定的文本测试我的模型。但有时确实有令人惊讶的结果,我想找出原因,尤其是我想知道哪些特征对结果有影响以及影响有多大——以了解预测。有没有办法做到这一点?
我们最近发布了一个允许检查功能的包(https://github.com/TeamHG-Memex/eli5);它支持许多 scikit-learn 分类器,但还不支持 MultinomialNB(不过这是在计划中)。如果您可以使用其他分类器,请查看教程。
如果你想要 MultinomialNB,那么你可以等到它被支持,帮助它,或者使用像 LIME 这样的通用解释方法。eli5 有一个实验性的 LIME实现;还有一个来自 LIME 作者的流行包:https : //github.com/marcotcr/lime。
抱歉,这不是真正的答案,因为正确的答案是检查 MultinomialNB 系数并将它们映射回特征;从 scikit-learn 0.18 MultinomialNB 开始,虽然(https://github.com/scikit-learn/scikit-learn/issues/2237)有一些问题,所以应该小心地完成(并为 eli5 做出贡献:D)。
| 归档时间: |
|
| 查看次数: |
1746 次 |
| 最近记录: |