IniziaInizia gratis

Cross-validation 5 x 5 fold ripetuta

Puoi fare molto più di una sola iterazione di cross-validation. La cross-validation ripetuta ti dà una stima migliore dell’errore sul test set. Puoi anche ripetere l’intera procedura di cross-validation. Questo richiede più tempo, ma ti fornisce molti più insiemi di dati out-of-sample da esaminare e valutazioni molto più precise di come si comporta il modello.

Una delle cose fantastiche della funzione train() in caret è la facilità con cui puoi eseguire modelli molto diversi o metodi di cross-validation semplicemente modificando alcuni argomenti della chiamata. Ad esempio, puoi ripetere l’intera procedura di cross-validation 5 volte per avere maggiore fiducia nelle stime dell’accuratezza out-of-sample del modello, ad esempio:

trControl = trainControl(
  method = "repeatedcv", 
  number = 5,
  repeats = 5, 
  verboseIter = TRUE
)

Questo esercizio fa parte del corso

Machine Learning con caret in R

Visualizza il corso

Istruzioni dell'esercizio

  • Riesegui il modello di regressione lineare sul dataset delle abitazioni Boston.
  • Usa 5 ripetizioni di una cross-validation a 5 fold.
  • Stampa il modello nella console.

Esercizio pratico interattivo

Prova a risolvere questo esercizio completando il codice di esempio.

# Fit lm model using 5 x 5-fold CV: model
model <- train(
  medv ~ ., 
  Boston,
  method = "lm",
  trControl = trainControl(
    method = "repeatedcv", 
    number = ___,
    repeats = ___, 
    verboseIter = TRUE
  )
)

# Print model to console
Modifica ed esegui il codice