Навчання glmnet з власним trainControl
Тепер, коли у вас є власний об'єкт trainControl, навчіть модель glmnet на наборі даних "don't overfit". Нагадаємо з відео: glmnet — це розширення узагальненої лінійної регресійної моделі (glm), яке накладає обмеження на величини коефіцієнтів, щоб запобігти перенавчанню. Це також відоме як "пеналізоване" регресійне моделювання і є дуже корисним підходом для наборів даних із багатьма предикторами та небагатьма спостереженнями.
glmnet може навчати два різні типи пеналізованих моделей, якими керує параметр alpha:
- Регресія Ridge (або
alpha = 0) - Регресія Lasso (або
alpha = 1)
Тепер ви навчите модель glmnet на наборі даних "don't overfit", використовуючи значення за замовчуванням пакета caret.
Ця вправа є частиною курсу
Machine Learning з пакетом caret в R
Інструкції до вправи
- Навчіть модель
glmnetз назвоюmodelна данихoverfit. Використайте власнийtrainControlз попередньої вправи (myControl). Зміннаyє змінною відповіді, а всі інші змінні — пояснювальні. - Виведіть модель у консоль.
- Використайте функцію
max(), щоб знайти максимальне значення метрики ROC, яка міститься десь уmodel[["results"]].
Інтерактивна практична вправа
Спробуйте виконати цю вправу, доповнивши цей зразок коду.
# Fit glmnet model: model
model <- train(
___,
___,
method = "glmnet",
trControl = ___
)
# Print model to console
# Print maximum ROC statistic