Ajustează hiperparametrul de penalizare
Acum că ai văzut cum influențează parametrul penalty selecția caracteristicilor în regresia lasso, poate te întrebi: „Care este cea mai bună valoare pentru penalty?" tidymodels pune la dispoziție funcții pentru a explora valoarea optimă a hiperparametrilor, precum penalty.
În acest exercițiu, vei identifica cea mai bună valoare a penalty pe baza RMSE-ului modelului, apoi vei antrena un model final cu acea valoare. Astfel, vei optimiza selecția caracteristicilor din regresia lasso în funcție de performanța modelului.
lasso_recipe a fost creat pentru tine, iar train este și el disponibil. Pachetele tidyverse și tidymodels au fost deja încărcate.
Acest exercițiu face parte din cursul
Reducerea dimensionalității în R
Instrucțiuni pentru exercițiu
- Definește un workflow cu
linear_reg()care va ajustapenalty. - Creează un eșantion de validare încrucișată cu 3 iterații din
trainși o secvență de 20 de valori ale penalizării cuprinse între 0,001 și 0,1. - Creează modele lasso folosind valori diferite ale penalizării.
- Vizualizează performanța modelului (RMSE) în funcție de valoarea penalizării.
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
# 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")