R插入物具有可重复的结果/结果

时间:2017-07-21 01:04:32

标签: r r-caret random-seed

我正在使用caret中的R包进行一些有监督的多变量分析。我正在尝试为我的脚本添加一些功能,以便在脚本运行时允许可重现的结果。

我有这个设置使用2个分类模型(每个模型分别运行,而不是作为一个enesmble):

library(caret)

load.data = ....
cleaned.data = cleaning(load.data)
mycontrol = trainControl(...)
train, test = createDatapartition(...)

model1 = train(...,
               data=train, ...,
               trControl=mycontrol,
               preprocess=c('center'))
model2 = train(...,
               data=train, ...,
               trControl=mycontrol,
               preprocess=c('pca'))

feature.importances = ...
summary(resamples(list(m1=model1,m2=model2)))
learing_curve_dat(...) #see link 1. below.
predict()
Evaluate(....) #see link 2. below

我应该在此管道中使用set.seed(#)以及#应该是什么,以便在每次运行脚本时获得可重现的结果 - 或者我只选择#的任何值随机?

链接:

1. 2.

1 个答案:

答案 0 :(得分:0)

您应该阅读包网页上的Notes on Reproducibility部分。

种子数并不重要。我用sample.int(100000, 1)生成一个。根据您使用模型的方式,您至少应在调用train之前设置种子(但请阅读上面的链接)。