편향-분산 트레이드오프 (Bias-Variance Trade-off)¶
개요¶
모든 예측 오차는 세 가지 원천으로 분해된다: 편향(Bias), 분산(Variance), 그리고 줄일 수 없는 오차(Irreducible Error). 편향은 모델이 너무 단순할 때(과소적합), 분산은 모델이 너무 복잡할 때(과적합) 커진다. 이 둘 사이의 균형을 찾는 것이 모델 선택의 핵심이다.
이것은 이론적 개념만이 아니다. 실제로 모델의 복잡도를 결정하고, 정규화(regularization) 강도를 설정하고, 앙상블 방법을 선택하는 모든 결정의 근간에 이 트레이드오프가 있다.
핵심 개념¶
수학적 분해¶
실제 관계 \(y = f(x) + \epsilon\) (\(\epsilon\)은 평균 0, 분산 \(\sigma^2\)인 노이즈)에서, 학습된 모델 \(\hat{f}(x)\)의 제곱 오차 기대값은 다음과 같이 분해된다:
각 항의 정의:
여기서 기대값 \(E[\cdot]\)는 같은 크기의 서로 다른 훈련 세트에 대해 취한다.
분해 유도 (핵심 단계):
첫째 항을 전개하면 (\(\bar{f} = E[\hat{f}]\)로 놓고):
직관적 이해¶
다트 비유:
| 편향 낮음 (Low Bias) | 편향 높음 (High Bias) | |
|---|---|---|
| 분산 낮음 (Low Variance) | 과녁 중심에 모여 있음 — 이상적 | 과녁 밖 한 점에 모여 있음 — 일관되게 틀림 |
| 분산 높음 (High Variance) | 과녁 중심 주위에 넓게 퍼짐 — 불안정하지만 평균은 맞음 | 과녁 밖에 넓게 퍼짐 — 최악 |
quadrantChart
title 편향-분산 다트보드 비유
x-axis "낮은 분산" --> "높은 분산"
y-axis "낮은 편향" --> "높은 편향"
quadrant-1 "과적합 위험"
quadrant-2 "이상적"
quadrant-3 "일관되게 틀림"
quadrant-4 "최악" 세 가지 오차 원천:
- 편향 (Bias): 모델의 가정이 잘못되어 발생하는 체계적 오차
- 예: 이차 관계인 데이터에 선형 회귀를 적용
-
높은 편향 = 과소적합(Underfitting)
-
분산 (Variance): 훈련 데이터의 작은 변동에 모델이 민감하게 반응하는 정도
- 예: 작은 데이터셋에 깊은 결정 트리 적용 → 훈련 데이터가 조금만 달라져도 완전히 다른 모델
-
높은 분산 = 과적합(Overfitting)
-
줄일 수 없는 오차 (\(\sigma^2\)): 데이터 자체의 내재적 노이즈. 어떤 모델로도 줄일 수 없다 (Bayes Error).
상세 내용¶
모델 복잡도와의 관계¶
오차
│
│ ╲ ╱ ← 테스트 오차 (Total Error)
│ ╲ ╌╌╌╌╌╌╌╌ ╱
│ ╲ ╱ ╲ ╱
│ ╲ ╱ ╲╱ ← 최적점 (Sweet Spot)
│ ╲╱
│
│ ────────────────────────── ← 줄일 수 없는 오차 (σ²)
│
│ ╲
│ ──────── ← 훈련 오차
│
└──────────────────────────── 모델 복잡도 →
단순 복잡
(High Bias) (High Variance)
- 단순한 모델: 높은 편향, 낮은 분산 → 과소적합
- 복잡한 모델: 낮은 편향, 높은 분산 → 과적합
- 최적점: 편향\(^2\) + 분산의 합이 최소인 지점
- U자형 테스트 오차: 훈련 오차는 복잡도에 따라 단조 감소하지만, 테스트 오차는 U자형
현대적 예외 — Double Descent: 매우 고차원/과모수화(overparameterized) 모델(딥러닝)에서는 보간(interpolation) 임계점을 지나면 테스트 오차가 다시 감소하는 현상이 관찰된다. 이는 고전적 U자형 곡선의 예외다.
과소적합 vs 과적합 진단과 처방¶
| 과소적합 (Underfitting) | 과적합 (Overfitting) | |
|---|---|---|
| 훈련 오차 | 높음 | 낮음 |
| 테스트 오차 | 높음 | 높음 |
| 둘의 차이 | 작음 | 큼 (큰 격차) |
| 원인 | 모델이 너무 단순 | 모델이 너무 복잡 |
| 처방 | 더 복잡한 모델, 더 많은 특성, 정규화 약화 | 더 많은 데이터, 정규화 강화, 단순한 모델, Dropout, 조기 종료, 앙상블 |
학습 곡선(Learning Curve)으로 진단: - 과소적합: 데이터를 늘려도 훈련 오차와 검증 오차 모두 높은 수준에서 수렴 - 과적합: 훈련 오차는 낮지만 검증 오차와의 격차가 크고, 데이터를 늘리면 격차가 줄어듦
모델별 편향-분산 특성¶
| 모델 | 편향 | 분산 | 참고 |
|---|---|---|---|
| 선형 회귀 | 높음 | 낮음 | 강한 선형 가정 |
| k-NN (k=1) | 낮음 | 높음 | 데이터에 완벽히 적합 |
| k-NN (k=n) | 높음 | 낮음 | 항상 전체 평균 예측 |
| 결정 트리 (깊음) | 낮음 | 높음 | Bagging으로 분산 감소 → Random Forest |
| 신경망 | 낮음 | 높음 → 정규화로 제어 | Dropout, Weight Decay, Early Stopping |
| 앙상블 (Bagging) | 원래 모델과 유사 | 감소 | 독립적 모델들의 평균 |
| 앙상블 (Boosting) | 감소 | 약간 증가 가능 | 잔차를 반복 학습 |
분류에서의 편향-분산¶
제곱 오차에 대한 깔끔한 분해와 달리, 0-1 손실에서의 편향-분산 분해는 덜 명확하다 (Domingos, 2000). 여러 분해 방법이 존재한다 (Kohavi & Wolpert 등). 하지만 실용적 해석은 동일하다:
- 단순한 분류기는 결정 경계가 너무 단순하여 패턴을 놓침 (높은 편향)
- 복잡한 분류기는 노이즈에 맞춰 불안정한 결정 경계를 만듦 (높은 분산)
언제 사용하는가¶
- 모델 복잡도를 결정할 때 → 훈련/검증 오차 곡선으로 편향-분산 상태 진단
- 정규화 강도를 설정할 때 → 편향-분산 균형점 탐색 (교차 검증 활용)
- 앙상블 전략을 선택할 때 → 분산이 문제면 Bagging, 편향이 문제면 Boosting
- 데이터 수집 여부를 결정할 때 → 과적합이면 데이터 추가가 도움, 과소적합이면 데이터 추가만으로는 부족
흔한 오해와 함정¶
-
"항상 가장 복잡한 모델이 가장 좋다" — 복잡도를 높이면 훈련 성능은 좋아지지만, 테스트 성능은 악화될 수 있다. 교차 검증으로 일반화 성능을 확인해야 한다.
-
"편향과 분산을 동시에 줄일 수 있다" — 고정된 데이터에서는 대체로 트레이드오프 관계다. 다만 더 많은 데이터를 확보하면 두 모두 개선 가능하고, 앙상블 방법은 한쪽만 선택적으로 줄일 수 있다.
-
"줄일 수 없는 오차는 무시해도 된다" — \(\sigma^2\)는 모델 성능의 하한을 결정한다. 이 한계보다 더 좋아질 수는 없으므로, 현실적인 성능 기대치를 설정하는 데 중요하다.
-
"딥러닝은 편향-분산 트레이드오프를 무시할 수 있다" — Double descent 현상이 관찰되지만, 트레이드오프 자체가 사라지는 것은 아니다. 정규화와 조기 종료는 여전히 중요하다.
-
"학습 곡선이 수렴했으면 데이터가 충분하다" — 훈련 오차와 검증 오차가 모두 높은 상태에서 수렴하면, 데이터 문제가 아니라 모델 복잡도 문제(과소적합)일 수 있다.
다른 주제와의 연결¶
- 회귀 지표: MSE 분해의 실제 적용 — 회귀 오차의 원천 분석
- 교차 검증: 편향-분산 상태를 실증적으로 진단하는 방법
- 모델 선택 기준: AIC, BIC의 복잡도 페널티와 편향-분산의 관계
- 혼동 행렬과 분류 지표: 분류에서의 편향-분산 해석
- 통계적 검정: 모델 간 성능 차이가 분산에 의한 것인지 검증