小编Tom*_*Tom的帖子

种子对象,用于在插入符号中并行操作的可重现结果

我正在尝试使用代码在插入符号中完全可重现的并行模型,但不了解如何设置种子对象中的向量的大小.对于gbm,我有4个调整参数,共有11个不同的级别,我的调优网格中有54行.如果我指定任何值<18作为下面"for(i in 1:10)"行中的最后一个值,我会收到一个错误:"坏种子:种子对象应该是长度为11的列表,其中包含10个整数向量大小为18,最后一个列表元素有一个整数." 为什么18?对于> 18(例如54)的值,它也会运行没有错误 - 为什么?非常感谢您的帮助.以下是基于http://topepo.github.io/caret/training.html,添加了一些内容.

library(mlbench)
data(Sonar)
str(Sonar[, 1:10])
library(caret)
library(doParallel)

set.seed(998)
inTraining <- createDataPartition(Sonar$Class, p = .75, list = FALSE)
training <- Sonar[ inTraining,]
testing  <- Sonar[-inTraining,]

grid <- expand.grid(n.trees = seq(50,150,by=50), interaction.depth = seq(1,3,by=1),
  shrinkage = seq(.09,.11,by=.01),n.minobsinnode=seq(8,10,by=2)) 

# set seed to run fully reproducible model in parallel mode using caret          
set.seed(825)
seeds <- vector(mode = "list", length = 11) # length is = (n_repeats*nresampling)+1
for(i in 1:10) seeds[[i]]<- sample.int(n=1000, 11) # ...the number of …
Run Code Online (Sandbox Code Playgroud)

r r-caret

2
推荐指数
1
解决办法
1385
查看次数

标签 统计

r ×1

r-caret ×1