r-在列车和测试数据上拟合最终模型



我使用R中的Caret包使用交叉验证来找到最优超参数。该模型适用于完整的训练数据,但我希望在训练和测试数据上训练最终模型。我该怎么做?

您可以获得最佳参数并将其作为单个网格进行拟合:

library(caret)
idx = sample(nrow(iris),100)
dat = iris
dat$Species = ifelse(atd$Species=="versicolor","v","o")
traindf = dat[idx,]
testdf = dat[idx,]
mdl = train(Species ~ .,data=traindf,method="gbm",
trControl=trainControl(method="cv"))
train_fit = train(Species ~ .,data=traindf,method="gbm",
trControl=trainControl(method="cv"),
tuneGrid = mdl$bestTune)
test_fit = train(Species ~ .,data=testdf,method="gbm",
trControl=trainControl(method="cv"),
tuneGrid = mdl$bestTune)

由于您没有提供数据或更多信息。这是最直接的方法。否则,您将调用该方法,例如在本例中为gbm(),然后重新调整。

最新更新