我使用插入符号找到在大电网优化调整参数。我发现使用doSnow与插入符号,记忆这么快就用完了。有一些策略来优化呢?
这是在C50模式中,搜索网格是如下:
mygrid <- expand.grid(trials=c(1, 1:4*10),
model=c('rules', 'tree'),
winnow=FALSE,
fuzzy=c(TRUE, FALSE),
cutoff=c(0.01, seq(0.025, 0.5, by=0.025)))
1)以保存存储器,我设置修剪= TRUE和returnData = FALSE减少单个模型的大小,如下:
mycontrol2 <- trainControl(method = "repeatedcv",
number = 3,#10,
repeats = 3,#5,
classProbs = TRUE,
summaryFunction = fiveStats,
verboseIter=TRUE,
trim=TRUE, returnData = FALSE #to make the model size smaller.
)
2),以使速度更快,我使用并行计算从DoSnow,如下:
library(doSNOW)
library(parallel)
cores <- detectCores()
cl <- makeCluster(cores-2, outfile="")
registerDoSNOW(cl)
然而,该过程是由Linux系统,我通过“顶”命令监视杀死由于出的存储器,所述错误消息是如下。
停止执行中的错误反序列化(节点$ CON):从连接读取错误
在这里,有没有更好的方式来管理具有良好的速度插入符号的培训?以下是我的一些想法和开放的讨论:
我会尽力回答根据我最近的经历的一些问题,因为你是充满话题。
我离开来计算并行应用插入符号是:
library(doParallel)
n_cores <- detectCores(); n_cores
# As my pc has three cores, I will use 3 of them:
registerDoParallel(cores = n_cores - 1)
然后,当你调你的trainControl,你可以申请:
mycontrol2 <- trainControl(
method = "repeatedcv",
number = 3,
repeats = 3,
classProbs = TRUE,
verboseIter=TRUE,
allowParallel = TRUE)
然后,你可以训练你的模型,我会给你可以使用一些行,因为显然你没有指定要使用什么型号的。最重要的是定义预测(T1〜),方法,数据和trControl,打字是这样的:
modFit_1 <- train(T1~.,
method="nnet",
trControl=cvCtrl, # Here you tune, among others, the "allowParallel"
data=train,
metric = "RMSE",
preProcess = "scale",
tuneGrid = mygrid)
您还有其他问题,我想他们是不是这个话题。但是,快速度,与和“的车型进行比较”,你可以为这个链接的内容的兴趣“来决定最佳的网格大小系统化的方式”:https://rpubs.com/chidungkt/389013,其中作者写道战略,将插入符[R包,比较的五款车型的性能。
嘿,给你的反馈,如果你得到它!照顾自己!