考虑随机森林法在Caret中的5倍交叉验证,每一次建立的随机森林的性质是什么?例如,在虹膜数据集中:
train_control <- trainControl(method="cv", number=5,savePredictions = TRUE)
output <- train(Species~., data=iris, trControl=train_control, method="rf")
output$results$mtry
[1] 2 3 4有3个mtry值,3个不同的森林是在交叉验证中建立的,这是真的吗?我怎样才能理解每一个折叠式森林的细节,像mtry?
发布于 2018-01-04 21:01:10
默认情况下,插入串函数将执行网格搜索,以寻找最佳的mtry。如果没有提供网格搜索的长度,它将执行长度为3的搜索。
从以下几个方面可以看出这些默认值:
?trainControl
?train
tuneLength = ifelse(trControl$method == "none", 1, 3))
search = "grid"当指定网格搜索(默认)和长度3(默认)时,使用插入符号函数var_seq查找mtry参数。从射频列车法可以看出这一点。根据功能的数量,此函数具有不同的行为。由于功能不足500个,它选择mtry如下:
floor(seq(2, to = p, length = len))其中p是特征的数量。Iris数据有4个特性,因此在3个可用的mtry值为2、3和4的情况下。
因此,这三个mtry值都是在5倍的CV测试。所以基本上有15种射频模型被制造出来。每辆5辆。最后,根据CV结果选择了最优的模型,并在整个列车数据基础上建立了最终模型--第16模型。
https://stackoverflow.com/questions/48103152
复制相似问题