Настройка гиперпараметра штрафа
Теперь, когда вы увидели, как параметр penalty влияет на отбор признаков в лассо-регрессии, возникает закономерный вопрос: «Какое значение penalty является оптимальным?» Пакет tidymodels предоставляет функции для поиска наилучших значений гиперпараметров, в том числе penalty.
В этом упражнении вы найдёте оптимальное значение penalty на основе метрики RMSE, а затем обучите финальную модель с этим значением. Это позволит настроить отбор признаков лассо-регрессии для достижения наилучшего качества модели.
lasso_recipe уже создан для вас, а train также доступен. Пакеты tidyverse и tidymodels загружены заранее.
Это упражнение является частью курса
Снижение размерности в R
Инструкции к упражнению
- Определите рабочий процесс на основе
linear_reg(), в котором будет настраиваться параметрpenalty. - Создайте выборку для 3-кратной кросс-валидации из
trainи последовательность из 20 значений штрафа в диапазоне от 0,001 до 0,1. - Постройте модели лассо-регрессии с различными значениями штрафа.
- Постройте график зависимости качества модели (RMSE) от значения штрафа.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Create tune-able model
lasso_model <- ___(___ = ___(), mixture = ___, engine = "glmnet")
lasso_workflow <- workflow(preprocessor = lasso_recipe, ___ = ___)
# Create a cross validation sample and sequence of penalty values
train_cv <- ___(___, v = ___)
penalty_grid <- grid_regular(penalty(range = c(___, ___)), levels = ___)
# Create lasso models with different penalty values
lasso_grid <- tune_grid(
___,
resamples = ___,
grid = ___)
# Plot RMSE vs. penalty values
___(___, metric = "rmse")