【问题标题】:random forest importance - different %IncMSE on plot and in the data frame随机森林重要性 - 图和数据框中的不同 %IncMSE
【发布时间】:2014-08-02 03:38:11
【问题描述】:

我需要一些帮助来了解 R 可用的随机森林包中内置的重要性功能。

运行随机森林 (rf) 后,可以使用 rf$importance 访问重要性。然后返回的数据帧包含两个字段:%IncMSE 和 IncNodePurity。

它们都可以使用随机森林包中内置的 varImpPlot() 函数进行绘制。但是,绘制的 %IncMSE 值与使用前面提到的方法 (rf$importance) 访问的结果不对应。

让我通过一个例子来解释这个问题:

data(mtcars)
rf<-randomForest(mpg~ .,data=mtcars,importance=T,mtry=3)
rf$importance
varImpPlot(rf)

最大 %IncMSE 值为 9.91 (disp),但在绘图上最大值约为 14。绘图上和使用 rf$importance 访问的所有其他值也不同。 (注意 IncNodePurity 没有区别)

有人可以解释一下吗?哪些值是正确的?

【问题讨论】:

  • 请注意,模型对象中还有一个组件称为importanceSD。它正在绘制缩放值......并且确实有一个 scale 参数到 varImpPlot
  • @joran:您应该发布作为答案。如果人们想要提供负面反馈,因为提问者应该阅读了帮助页面并且应该定义了要应用的“正确性”标准,他们仍然可以这样做,但您的评论似乎是一个足够的答案。

标签: r random-forest


【解决方案1】:

正如我在评论中指出的,它们不同的原因是varImpPlot 正在使用随机森林对象的importanceSD 组件绘制缩放值。这可以使用varImpPlotscale 参数来控制。

【讨论】:

    猜你喜欢
    • 2013-05-04
    • 2017-01-13
    • 2016-06-24
    • 1970-01-01
    • 2021-05-09
    • 2015-05-19
    • 2021-08-29
    • 2017-08-29
    • 2015-05-12
    相关资源
    最近更新 更多