sklearn Random Forest分类器可以通过树调整样本大小,来处理类不平衡吗?

Luk*_*uke 6 python r classification random-forest scikit-learn

也许这太啰嗦了.关于sklearn的随机森林的简单问题:

对于真/假分类问题,sklearn的随机森林中是否有一种方法可以指定用于训练每棵树的样本大小,以及真假观察的比例?

更多详情如下:


在随机森林的R实现中,名为randomForest,有一个选项sampsize().这允许您根据结果平衡用于训练每棵树的样本.

例如,如果您试图预测结果是真还是假,并且训练集中90%的结果都是假的,您可以设置sampsize(500, 500).这意味着每棵树将在训练集中随机抽样(替换)进行训练,其中500真实和500错误观察.在这些情况下,我发现模型在使用50%截止值时可以更好地预测真实结果,从而产生更高的kappas.

在sklearn实现中似乎没有这样的选项.

  • 有没有办法在sklearn中模仿这个功能?
  • 只是根据Kappa统计数据优化截止值会得到类似的结果,还是在这种方法中丢失了什么?

Luk*_*uke 2

阅读完文档后,我认为答案肯定是否定的。不过,对任何添加该功能的人表示敬意。如上所述,R 包 randomForest 包含此功能。