具有指定误报和敏感性的随机森林

时间:2015-07-29 21:34:07

标签: python r machine-learning random-forest

使用R中的randomForest包,我能够训练一个最小化整体错误率的随机森林。然而,我想要做的是训练两个随机森林,一个首先最小化误报率(~0)然后最小化整体错误率,一个首先使灵敏度最大化(~1),然后是整体误差。该问题的另一个结构是:给定误报率和敏感率,训练两个不同的随机森林,分别满足其中一个比率,然后最小化整体错误率。有谁知道如果有一个r包或python包,或者那里有任何其他软件这样做或者如何做到这一点?谢谢你的帮助。

2 个答案:

答案 0 :(得分:0)

这是一个值得尝试的解决方法。 (很抱歉,我没有足够的声誉将其作为评论。)

作为

  • 灵敏度= TP /(TP + FN)
  • 特异性= TN /(TN + FP)
  • ER =(TP + TN)/(TP + FN + TN + FP)

(来自http://fiddle.jshell.net/doyL1L0p/1/的注释)

如果您复制一些阳性/阴性样本(或增加权重),则ER将近似于敏感性/特异性。

因此,如果您想要最大化灵敏度,那么您可以将一些正样本采样/复制到数据集中,然后在其上训练您的RF。为了最大化特异性,您可以对阴性样本做同样的事情。

答案 1 :(得分:0)

您可以对“规范化”参数进行网格划分,以最好地匹配您的目标行为。

感兴趣的参数:

  • 最大深度
  • 功能数量