在训练和测试数据上拟合最终模型
fit final model on both train and test data
我使用 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()
并再次适合。
我使用 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()
并再次适合。