glmnet mit benutzerdefiniertem trainControl fitten
Jetzt, da du ein benutzerdefiniertes trainControl-Objekt hast, fittest du ein glmnet-Modell auf den Datensatz "don't overfit". Zur Erinnerung aus dem Video: glmnet ist eine Erweiterung des generalisierten linearen Regressionsmodells (oder glm), die Beschränkungen auf die Größe der Koeffizienten legt, um Overfitting zu verhindern. Das ist als "penalisierte" Regression bekannt und ist besonders nützlich bei Datensätzen mit vielen Prädiktoren und wenigen Beobachtungen.
glmnet kann zwei Arten von penalisierten Modellen fitten, gesteuert durch den Parameter alpha:
- Ridge-Regression (oder
alpha = 0) - Lasso-Regression (oder
alpha = 1)
Du wirst nun ein glmnet-Modell auf den Datensatz "don't overfit" fitten, und dabei die Standardwerte aus dem caret-Paket verwenden.
Diese Übung ist Teil des Kurses
Maschinelles Lernen mit caret in R
Anleitung zur Übung
- Trainiere ein
glmnet-Modell namensmodelauf denoverfit-Daten. Verwende das benutzerdefiniertetrainControlaus der vorherigen Übung (myControl). Die Variableyist die Zielvariable, alle anderen Variablen sind erklärende Variablen. - Gib das Modell in der Konsole aus.
- Verwende die Funktion
max(), um das Maximum der ROC-Kennzahl zu finden, die sich irgendwo inmodel[["results"]]befindet.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
# Fit glmnet model: model
model <- train(
___,
___,
method = "glmnet",
trControl = ___
)
# Print model to console
# Print maximum ROC statistic