Adatta glmnet con un trainControl personalizzato
Ora che hai un oggetto trainControl personalizzato, adatta un modello glmnet al dataset "don't overfit". Ricorda dal video che glmnet è un'estensione del modello di regressione lineare generalizzata (o glm) che impone vincoli sull'ampiezza dei coefficienti per evitare l'overfitting. Questo è più comunemente noto come regressione "penalizzata" ed è una tecnica molto utile su insiemi di dati con molti predittori e pochi valori.
glmnet è in grado di adattare due diversi tipi di modelli penalizzati, controllati dal parametro alpha:
- Regressione ridge (ovvero
alpha = 0) - Regressione lasso (ovvero
alpha = 1)
Ora adatterai un modello glmnet al dataset "don't overfit" usando i valori predefiniti forniti dal pacchetto caret.
Questo esercizio fa parte del corso
Machine Learning con caret in R
Istruzioni dell'esercizio
- Allena un modello
glmnetchiamatomodelsui datioverfit. Usa iltrainControlpersonalizzato dell'esercizio precedente (myControl). La variabileyè la variabile di risposta e tutte le altre sono variabili esplicative. - Stampa il modello in console.
- Usa la funzione
max()per trovare il valore massimo della statistica ROC contenuta da qualche parte inmodel[["results"]].
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
# Fit glmnet model: model
model <- train(
___,
___,
method = "glmnet",
trControl = ___
)
# Print model to console
# Print maximum ROC statistic