如何优化插入符的速度和内存使用与并行计算?

问题描述 投票:1回答:1

我使用插入符号找到在大电网优化调整参数。我发现使用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):从连接读取错误

在这里,有没有更好的方式来管理具有良好的速度插入符号的培训?以下是我的一些想法和开放的讨论:

  1. 让搜索网格几个小和单独训练每个。问题: 有决定最佳的网格大小的系统方法? 分割后,有没有更好的方式来模型结合起来,因为我还是想用plot.train(MOD)方法来表现图形。
  2. 设置平行节点,即,C1,较小的数量。问题: 有没有设置最佳值C1的策略?
r r-caret parallel.foreach
1个回答
0
投票

我会尽力回答根据我最近的经历的一些问题,因为你是充满话题。

我离开来计算并行应用插入符号是:

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包,比较的五款车型的性能。

嘿,给你的反馈,如果你得到它!照顾自己!

© www.soinside.com 2019 - 2024. All rights reserved.