【问题标题】:Is there a way to know how far R has gotten on a random forest model?有没有办法知道 R 在随机森林模型上走了多远?
【发布时间】:2019-10-21 08:51:16
【问题描述】:

我目前正在学习随机森林以及如何在 R 中创建它们。但是,正如我所发现的,创建这些树可能非常耗时,有时我不知道 R 已经走了多远,或者它是否已经崩溃了,所以我恐慌地关闭了 R。我使用的是randomForest包,我的代码如下:

model <- randomForest(def ~ ., 
                      data = mydataset, 
                      mtry = 4, 
                      ntree = 200, 
                      importance = TRUE)

有没有办法让 R 随时显示它已经走了多远,或者当它完成一棵树并继续到下一棵树时?

【问题讨论】:

  • 查看我的答案以使输出更详细。如果您发现 randomForest 太慢,您可能需要查看 ranger 包,我发现训练随机森林的速度要快得多。

标签: r random-forest diagnostics


【解决方案1】:

在这种情况下,您通常会寻找使函数更冗长的参数。这通常类似于 verbose = TRUE,但它会有所不同,并且某些函数不提供任何类型的详细设置。

在您的情况下,您只需查找randomForest 的帮助(使用?randomForest::randomForest)即可找到参数do.trace

do.trace
如果设置为 TRUE,则在运行 randomForest 时提供更详细的输出。如果设置为某个整数,则会为每个 do.trace 树打印运行输出。

换句话说,您可以通过以下方式启用详细程度:

model <- randomForest(def ~ ., data = mydataset, mtry = 4, 
                      ntree = 200, importance = TRUE, do.trace = TRUE)

或者,每 100 棵树打印一些反馈:

model <- randomForest(def ~ ., data = mydataset, mtry = 4, 
                      ntree = 200, importance = TRUE, do.trace = 100)

首先检查功能手册总是一种很好的反应。如果您使用 rstudio,则可以使用help 窗格而不是使用???

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-23
    • 2019-10-07
    • 2020-02-25
    • 2022-11-11
    • 2016-05-08
    • 2021-04-26
    • 2019-07-10
    • 2017-08-11
    相关资源
    最近更新 更多