插入符号保存最小尺寸模型
在caret中如何保存最小尺寸的模型。 在这个例子中, gbmFit1
包含gbmFit1$trainingData
。 保存gbmFit1
保存所有这些变量。 由于我的训练数据很大,我想摆脱所有这些额外的变量,并希望以最小的尺寸保存模型。
library(mlbench)
library(caret)
data(Sonar)
x <- Sonar[, colnames(Sonar)!="Class"]
y <- Sonar$Class
gbmFit1 <- train(x,y, method = "gbm", verbose = FALSE)
predict(gbmFit1, x[1:10, ]) #predict for 10 samples
##[1] R R R R R R R R R R
##Levels: M R
dim(gbmFit1$trainingData)
#[1] 208 61
仅使用predict(gbmFit1$finalModel, x[1:10, ])
会给出错误:
predict(gbmFit1$finalModel, x[1:10, ])
##Error in paste("Using", n.trees, "trees...n") :
##argument "n.trees" is missing, with no default
我认为这应该做到这一点:
library(mlbench)
library(caret)
data(Sonar)
x <- Sonar[, colnames(Sonar)!="Class"]
y <- Sonar$Class
tc1 <- trainControl(returnData = F) # tells caret not to save training data.
gbmFit1 <- train(x,y, method = "gbm", verbose = FALSE, trControl = tc1)
predict(gbmFit1$finalModel, x[1:10, ], gbmFit1$finalModel$tuneValue$n.trees) # passes n.trees value to gbm.
您可能需要阅读caret中的trainControl
功能:https: trainControl
上一篇: caret saving minimum size model
下一篇: different results using train(), predict() and resamples()