8.77 모델 선택과 교차 검증
1. 모델 선택의 문제
모델 선택(model selection)은 데이터에 가장 적합한 모델을 여러 후보 중에서 선택하는 문제이다. 단순히 훈련 오차를 최소화하는 모델을 선택하면 과적합(overfitting)이 발생하여 새로운 데이터에 대한 일반화 성능이 저하된다. 모델 선택의 핵심은 모델의 복잡도와 데이터 적합의 균형을 찾는 것이다.
2. 편향-분산 상충(Bias-Variance Tradeoff)
예측 오차를 편향과 분산으로 분해한다.
\mathbb{E}[(y - \hat{f}(\mathbf{x}))^2] = \text{Bias}^2[\hat{f}(\mathbf{x})] + \text{Var}[\hat{f}(\mathbf{x})] + \sigma^2
- 편향: 모델이 단순하여 참 함수를 근사하지 못함에서 발생
- 분산: 훈련 데이터의 변동에 모델이 민감함에서 발생
- \sigma^2: 환원 불가능한 잡음
단순한 모델은 높은 편향 · 낮은 분산, 복잡한 모델은 낮은 편향 · 높은 분산을 가진다. 최적 모델 복잡도는 두 항의 합을 최소화한다.
3. 정보 기준(Information Criteria)
모델의 적합도와 복잡도를 결합한 점수로 모델을 비교한다.
3.1 AIC(Akaike Information Criterion)
\text{AIC} = -2\ln L + 2p
여기서 L은 최대 가능도, p는 모수의 수이다. AIC를 최소화하는 모델을 선택한다.
3.2 BIC(Bayesian Information Criterion)
\text{BIC} = -2\ln L + p\ln n
n은 표본 크기이다. BIC는 복잡도에 더 강한 벌점을 부과하며, n이 크면 단순한 모델을 선호한다.
3.3 AIC vs. BIC
- AIC: 예측 정확도를 최적화, 점근적으로 진 모델을 포함하는 가장 단순한 모델을 선택하지 못할 수 있음
- BIC: 일관성을 가짐, 진 모델이 후보에 있으면 n \to \infty에서 진 모델을 선택
4. 교차 검증(Cross-Validation)
훈련 데이터를 분할하여 모델의 일반화 성능을 추정하는 방법이다.
4.1 홀드아웃 검증(Holdout Validation)
데이터를 훈련 세트와 검증 세트로 한 번 분할한다. 간단하지만 분할에 의존적이며, 데이터 활용이 비효율적이다.
4.2 K-겹 교차 검증(K-Fold Cross-Validation)
- 데이터를 K개의 대략 동일 크기 부분으로 분할
- 각 부분을 차례로 검증 세트로 사용하고 나머지 K - 1개 부분으로 학습
- K번의 검증 오차를 평균
\text{CV}_K = \frac{1}{K}\sum_{k=1}^{K}\text{MSE}_k
K의 일반적 선택: K = 5 또는 K = 10. K가 크면 편향은 감소하지만 분산이 증가한다.
4.3 LOOCV(Leave-One-Out Cross-Validation)
K = n인 교차 검증. 각 관측이 한 번씩 검증에 사용된다. 편향은 최소이지만 분산과 계산 비용이 크다.
4.4 계층 교차 검증(Stratified Cross-Validation)
분류 문제에서 각 겹(fold)이 전체 데이터와 유사한 클래스 비율을 유지하도록 분할한다. 불균형 데이터에 중요하다.
5. 하이퍼파라미터 튜닝
모델의 하이퍼파라미터(정규화 강도, 커널 매개변수 등)를 교차 검증으로 결정한다.
5.1 중첩 교차 검증(Nested Cross-Validation)
외부 루프로 모델 성능을 평가하고, 내부 루프로 하이퍼파라미터를 튜닝한다. 내부 검증의 편향을 방지하여 정직한 성능 추정을 제공한다.
6. 시계열에서의 교차 검증
시간적 순서가 있는 데이터에서는 표준 K-겹 교차 검증이 부적절하다. 미래 데이터가 과거의 예측에 사용되면 안 되기 때문이다.
시계열 교차 검증: 훈련 기간을 점진적으로 확장하며 다음 기간을 검증으로 사용.
7. 부트스트랩 검증
데이터로부터 복원 추출로 부트스트랩 샘플을 생성하고, 포함되지 않은 관측(out-of-bag, OOB)으로 검증한다. 배깅(bagging), 랜덤 포레스트에서 자연스럽게 사용된다.
8. 로봇 공학에서의 모델 선택과 교차 검증
8.1 학습 모델의 하이퍼파라미터 결정
신경망 정책, GP 모델, 분류기 등의 하이퍼파라미터를 교차 검증으로 결정한다.
8.2 동역학 모델의 차수 결정
로봇 동역학 모델의 다항식 차수 또는 기저 함수 수를 AIC/BIC로 선택한다.
8.3 센서 모델 선택
관측 모델의 형태(가우시안, 가우시안 혼합, 비모수 등)를 교차 검증으로 비교한다.
8.4 데이터 효율성
실물 로봇의 데이터가 제한적일 때, 교차 검증이 데이터 활용을 극대화한다.
9. 참고 문헌
- Hastie, T., Tibshirani, R., & Friedman, J. (2009). The Elements of Statistical Learning (2nd ed.). Springer.
- Bishop, C. M. (2006). Pattern Recognition and Machine Learning. Springer.
- Burnham, K. P., & Anderson, D. R. (2002). Model Selection and Multimodel Inference (2nd ed.). Springer.
- Kohavi, R. (1995). “A Study of Cross-Validation and Bootstrap for Accuracy Estimation and Model Selection.” Proceedings of IJCAI, 1137–1145.
version: 1.0