ПочатиПочніть безкоштовно

Навчання 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
Редагувати та запускати код