有没有办法知道 R 在随机森林模型上的进展情况?

Is there a way to know how far R has gotten on a random forest model?

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

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

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

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

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

do.trace
If set to TRUE, give a more verbose output as randomForest is run. If set to some integer, then running output is printed for every do.trace trees.

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

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 窗格,而不是使用 ???.