randomForest::varImp VS 条件变量重要性

数据挖掘 r 预测建模 特征选择 随机森林
2022-02-23 09:12:09

数据:

我的训练集由 ~450k obs 和 26 个变量组成,其中 1 个是序数因子(order_month,12 个级别),其余的是数字。此外,我的一些预测变量是高度相关的(Pearson's > 0.5),这是意料之中的,有时是有意的。

我训练了一个很好的 RF 模型(ROC 0.96,在对看不见的数据进行测试时,特异性约为 90%,灵敏度约为 90%),并使用varImp().

问题:

现在,我知道具有阶乘和/或相关预测变量可能会导致 RF 模型中的变量选择有偏差,而条件推理树 (CIT) 应该是一种补救措施。

我试图比较 with 的结果,randomForest::varImp()但是party::varimp(myforest, conditional=TRUE)在后者中出现错误:

Error in model.matrix.default(as.formula(f), data = blocks) : term 1 would require 9e+12 columns,

表明我有太多变量或变量太多级别。

最重要的是,它需要超过 24 小时才能运行party::cforest(),并且predict()在 CIT 模型上运行会使我的计算机完全崩溃。鉴于上述情况,我有几个

问题:

1) 我完全错误分类 RF 模型中顶级 VarImp 的可能性有多大。在这里运行 CIT 是绝对必要的吗?

2)如果不通过,获得条件变量重要性的替代方法是什么party::varimp()

非常感谢您的建议!卡西亚

0个回答
没有发现任何回复~