모형 적합 - Elastic Net :: 예측 분석 - mindscale
Skip to content

모형 적합 - Elastic Net

ElasticNet

  • 회귀 모형 + 회귀계수에 약간의 bias를 추가
  • 자료가 가질 수 있는 variance로 인해 학습 자료에 가장 잘 적합시킨 모형보다 예측력을 향상시킬 수 있음
  • 좀 더 일반화된 모형을 만들어 예측력을 향상시키는 것이 목적

  • 튜닝파라미터

    • $\lambda$: 회귀 계수에 섞을 bias 양
    • $\alpha$: 두 가지 bias의 종류의 비중
  • $\beta$는 모형이 찾아주지만 튜닝파라미터인 $\lambda$와 $\alpha$는 직접 찾아야 함

실습

cross validation

controlObject <- trainControl(method = 'repeatedcv', # cross validation 반복 시행
                              repeats = 2, # 2번 시행
                              number = 5, # training 자료를  10조각 냄
                              classProbs = T)

grid 생성

Elst_Grid <- expand.grid(.alpha = seq(0,1,0.1),
                         .lambda = seq(0.01, 1, length = 50))
# 550개 생성

모형 학습

Elas_Model <- train(class ~ .,
                    data = Train_dat,
                    method = 'glmnet',
                    tuneGrid = = Elst_Grid,
                    preProc = c('center', 'scale'),
                    metric = 'Kappa',
                    trControl = controlObject)

모형 확인

Elas_Model
Elas_Model$bestTune
- 마지막 줄에 가장 좋은 모델의 alpha와 lambda를 알려줌