你能在scikit学习中修复分类器的假阴性率吗?



我在scikit学习中使用随机森林分类器,其中包含两个类的不平衡数据集。比起假阳性,我更担心假阴性。是否有可能将假阴性率固定(比如1%),并要求scikit以某种方式优化假阳性率?

如果这个分类器不支持,是否有另一个分类器支持?

我相信使用class_weight参数可以部分解决sklearn中类不平衡的问题。

this参数要么是一个字典,其中每个类被分配一个统一的权重,要么是一个字符串,告诉sklearn如何构建这个字典。例如,将此参数设置为"auto",将按其频率的反比对每个类进行加权。

通过用较高的数量加权出现较少的类,您最终可以得到"更好"的结果。

分类器如SVM逻辑回归也提供这个class_weight参数。

这个Stack Overflow的答案给出了一些关于如何处理类不平衡的其他想法,如采样不足和过采样

我找到了一篇关于类失衡问题的文章。

http://www.chioka.in/class-imbalance-problem/

基本上讨论了以下可能的解决方案,总结如下:

  • 基于成本函数的方法
  • 基于采样的方法
  • SMOTE(合成少数派过采样技术)
  • 最近的方法:RUSBoost, SMOTEBagging和Underbagging

希望能有所帮助

随机森林已经是一个袋装分类器了,所以它应该已经给出了一些好的结果。

获得期望的假阳性或假阴性准确度的一种典型方法是使用ROC曲线进行分析http://scikit-learn.org/stable/auto_examples/plot_roc.html以及修改某些参数以实现期望的FP速率等。

不确定是否有可能使用参数来调整随机森林分类器的FP率。您可以根据应用程序查看其他分类器。

相关内容

  • 没有找到相关文章

最新更新