Вы можете использовать tuneGrid
, чтобы указать, какие значения настройки выбрать в обучении. Обратите внимание, что разные модели (например, knn, svm, ..) будут иметь разные значения настройки.
Кроме того, как говорится в ?caret::train
:
tuneGrid
Кадр данных с возможными значениями настройки. Столбцы названы так же, как параметры настройки. Используйте getModelInfo, чтобы получить список параметров настройки для каждой модели, или посмотрите http://topepo.github.io/caret/available-models.html. (ПРИМЕЧАНИЕ. Если указан, этот аргумент должен быть назван.)
Рабочий код в вашем случае будет:
library(caret)
ctrl2 <- trainControl(method = "adaptive_cv",
repeats = 5)
grid_knn <- expand.grid(k=8:12)
set.seed(100)
mod2 <- train(Species ~ ., data = iris,
method = "knn",
tuneGrid = grid_knn,
trControl = ctrl2)
Что дает вывод:
> mod2
k-Nearest Neighbors
150 samples
4 predictor
3 classes: 'setosa', 'versicolor', 'virginica'
No pre-processing
Resampling: Adaptively Cross-Validated (10 fold, repeated 5 times)
Summary of sample sizes: 135, 135, 135, 135, 135, 135, ...
Resampling results across tuning parameters:
k Accuracy Kappa Resamples
8 0.9600000 0.940 5
9 0.9733333 0.960 50
10 0.9733333 0.960 50
11 0.9746667 0.962 50
12 0.9666667 0.950 6
Accuracy was used to select the optimal model using the largest value.
The final value used for the model was k = 11.