R中的暂停和继续插入符号训练

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

假设我将在R中进行caret培训,但我想将此培训分为两个运行阶段。

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

# First run session
nn.partial <- train(Class ~ ., data = training, 
                method = "nnet",
                 max.turns.of.iteration=5) # Non-existent parameter. But represents my goal

让我们假设nn完整对象我只有一个具有训练信息的局部对象,直到第五回合为止(即nn.partial)。因此,将来我可以运行以下代码来完成培训工作:

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

nn <- train(Class ~ ., data = training, 
                 method = "nnet",
                 previous.training=nn.partial) # Non-existent parameter. But represents my goal

我知道max.turns.of.iterationprevious.training都不存在于train功能中。我只是尽力用代码表示如果已经在train函数中实现的理想世界。但是,由于参数不存在,是否有办法通过某种方式欺骗函数来实现此目标(即,多次进行插入符号训练?)>

我尝试使用trainControl功能没有成功。

t.control <- trainControl(repeats=5)
nn <- train(Class ~ ., data = training, 
                 method = "nnet",
trControl = t.control)

通过这样做,迭代匝数仍然比5高得多,正如我在我的示例中希望获得的。

假设我将在R中进行插入式训练,但我想将此训练分为两个运行阶段。库(mlbench)数据(声纳)库(脱字符)set.seed(998)正在训练中

r machine-learning parallel-processing neural-network r-caret
1个回答
0
投票

我几乎可以肯定,在当前的插入式基础架构中实施起来非常复杂。但是,我将向您展示如何使用mlr3开箱即用地实现这种功能。

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