Я выполняю k-кратное повторное обучение с пакетом каретки и хочу рассчитать доверительный интервал для моих показателей точности. В этом руководстве печатается обучающий объект курсора, который показывает показатели точности / каппа и связанную SD: https://machinelearningmaster.com/tune-machine-learning-algorithms-in-r/. Однако, когда я это делаю, все, что указано, - это средние значения метрики.

control <- trainControl(method="repeatedcv", number=10, repeats=3, search="grid")
set.seed(12345)
tunegrid <- expand.grid(.mtry=4)
rf_gridsearch <- train(as.factor(gear)~., data=mtcars, method="rf", 
                       metric="Accuracy", 
                       tuneGrid=tunegrid, 
                       trControl=control)
print(rf_gridsearch)
> print(rf_gridsearch)
Random Forest 

32 samples
10 predictors
 3 classes: '3', '4', '5' 

No pre-processing
Resampling: Cross-Validated (10 fold, repeated 3 times) 
Summary of sample sizes: 29, 28, 30, 29, 27, 28, ... 
Resampling results:

  Accuracy   Kappa    
  0.8311111  0.7021759

Tuning parameter 'mtry' was held constant at a value of 4
2
RandomForester 1 Мар 2021 в 05:49

1 ответ

Лучший ответ

Похоже, что он хранится в переменной результатов результирующего объекта.

> rf_gridsearch$results
  mtry  Accuracy     Kappa AccuracySD   KappaSD
1    4 0.7572222 0.6046465  0.2088411 0.3387574

Доверительный интервал 95% можно найти, используя критическое значение z, равное 1,96.

> rf_gridsearch$results$Accuracy+c(-1,1)*1.96*rf_gridsearch$results$AccuracySD
[1] 0.3478936 1.1665509
1
Stacker 1 Мар 2021 в 07:44