假设我将在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.iteration
和previous.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)正在训练中
我几乎可以肯定,在当前的插入式基础架构中实施起来非常复杂。但是,我将向您展示如何使用mlr3开箱即用地实现这种功能。