r - h2o randomForest变量重要性

标签 r random-forest confusion-matrix h2o

我正在使用 h2o 包创建 randomForest 回归模型。我对变量重要性有一些问题。我正在创建的模型就在这里。一切正常。

有些变量是数值变量,但有些变量是分类变量。

RandomForest <- h2o.randomForest(x = c("Year",  "Month", "Day", "Time", "Show", "Gen",
                                   "D", "Lead"), y = "Ratio", data = data.hex, importance=T, stat.type = "GINI",
                             ntree = 50, depth = 50, nodesize = 5, oobee = T, classification = FALSE, type = "BigData")

但是,当我想查看变量重要性时,输出如下所示。

Classification: FALSE
Number of trees: 50
Tree statistics:
        Min.  Max.    Mean.
Depth     30    40    33.26
Leaves 20627 21450 21130.24


Variable importance:
                        Year    Month      Day     Time  Show   Gen           D   Lead
Relative importance 20536.64 77821.76 26742.55 67476.75 283447.3 60651.24   87440.38 3658.625
Standard Deviation        NA       NA       NA       NA       NA       NA       NA       NA
Z-Scores                  NA       NA       NA       NA       NA       NA       NA       NA

Overall Mean-squared Error:  

我想知道的是: 1) 为什么可能存在 NA 值。 2)相对重要性的实际含义是什么。不应该是1到100之间吗? 3)为什么输出中没有混淆矩阵?

感谢您的帮助!

最佳答案

首先,我建议下载最新版本的H20-3。这可以解决您获得标准差的 NA 值的问题。 相对重要性量化了特定预测变量相对于其他个体预测变量在预测响应变量时的贡献。您可能认为 1 到 100 之间的数字是缩放重要性。 最后,您在输出中没有得到混淆矩阵的原因是您有一个回归模型而不是分类模型。混淆矩阵仅为分类模型而生成。

您可以通过运行以下命令在 R 中运行随机森林示例:

library(h2o)
conn <- h2o.init()
demo(h2o.randomForest)

然后,您可以通过执行以下操作来查看混淆矩阵/相对和缩放重要性表:

> h2o.confusionMatrix(iris.rf)
Confusion Matrix - (vertical: actual; across: predicted):
                Iris-setosa Iris-versicolor Iris-virginica  Error      Rate
Iris-setosa       50.000000        0.000000       0.000000 0.0000 =  0 / 50
Iris-versicolor    0.000000       47.000000       3.000000 0.0600 =  3 / 50
Iris-virginica     0.000000        6.000000      44.000000 0.1200 =  6 / 50
Totals            50.000000       53.000000      47.000000 0.0600 = 9 / 150
> h2o.varimp(iris.rf)
Variable Importances:
   variable relative_importance scaled_importance percentage
1 petal_len         1926.421509          1.000000   0.445738
2 petal_wid         1756.277710          0.911679   0.406370
3 sepal_len          493.782562          0.256321   0.114252
4 sepal_wid          145.390717          0.075472   0.033641

谢谢,希望这会有所帮助!

关于r - h2o randomForest变量重要性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30225921/

相关文章:

python - 使用随机森林预测 future 发生的情况

java - 将 mahout 随机森林分类输出转换为可读

python - 计算两个文本文件的混淆矩阵

r - 随机森林混淆矩阵中的错误

r - 使用 gmm 包的矩阵乘法错误

r - 有什么方法可以访问由 makeActiveBinding 安装的函数?

r - 如何使 randomForest 模型尺寸变小?

python-3.x - 如何更改 sklearn.metrics 包中的 plot_confusion_matrix 默认图形大小

rbind data.frames 列表,同时在 R 中保留 NULL 元素

r - 访问具有原始函数名称的函数参数