penalty 하이퍼파라미터 튜닝하기
이제 penalty 매개변수가 lasso 회귀의 특성 선택에 어떤 영향을 미치는지 보셨다면, "그렇다면 penalty의 최적 값은 무엇일까?"라는 궁금증이 생길 수 있습니다. tidymodels에는 penalty와 같은 하이퍼파라미터의 최적 값을 탐색하는 함수들이 준비되어 있습니다.
이번 연습에서는 모델의 RMSE를 기준으로 최적의 penalty 값을 찾은 뒤, 그 값을 사용해 최종 모델을 적합합니다. 이를 통해 모델 성능을 위해 lasso 회귀의 특성 선택을 최적화하게 됩니다.
lasso_recipe는 미리 만들어져 있으며 train도 제공됩니다. tidyverse와 tidymodels 패키지도 이미 로드되어 있습니다.
이 연습은 강의의 일부입니다
R에서의 차원 축소
연습 안내
penalty를 튜닝하도록linear_reg()워크플로를 정의하세요.train에서 3-겹 교차 검증 샘플을 만들고, 0.001부터 0.1까지 범위의 penalty 값 20개를 생성하세요.- 서로 다른 penalty 값을 사용해 lasso 모델을 생성하세요.
- penalty 값에 따른 모델 성능(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")