Fit glmnet with custom trainControl
Now that you have a custom trainControl
object, fit a glmnet
model to the "don't overfit" dataset. Recall from the video that glmnet
is an extension of the generalized linear regression model (or glm
) that places constraints on the magnitude of the coefficients to prevent overfitting. This is more commonly known as "penalized" regression modeling and is a very useful technique on datasets with many predictors and few values.
glmnet
is capable of fitting two different kinds of penalized models, controlled by the alpha
parameter:
- Ridge regression (or
alpha = 0
) - Lasso regression (or
alpha = 1
)
You'll now fit a glmnet
model to the "don't overfit" dataset using the defaults provided by the caret
package.
This exercise is part of the course
Machine Learning with caret in R
Exercise instructions
- Train a
glmnet
model calledmodel
on theoverfit
data. Use the customtrainControl
from the previous exercise (myControl
). The variabley
is the response variable and all other variables are explanatory variables. - Print the model to the console.
- Use the
max()
function to find the maximum of the ROC statistic contained somewhere inmodel[["results"]]
.
Hands-on interactive exercise
Have a go at this exercise by completing this sample code.
# Fit glmnet model: model
model <- train(
___,
___,
method = "glmnet",
trControl = ___
)
# Print model to console
# Print maximum ROC statistic