이곳에서는 기계 학습에서 자주 등장하는 Bias-Variance Tradeoff 에 대해 살펴본다.

정의

우리의 자료 가 결합확률분포 를 따른다고 하자 (즉, ). 그런데 학습하는 우리는 에 대해 완전하게 파악할 수 없다. 따라서 우리는,

와 같이 독립항등분포를 따르는 개의 샘플을 추출하여 이를 통해 학습을 진행하고자 한다.

만약 우리가 L2 loss를 사용하기로 한다면, 모델 에 대해 다음 두 가지 loss 값을 생각할 수 있다. 먼저 는 모델이 실제로 가지는 loss이다.

한편, 는 우리가 추출한 샘플을 통해 추정한 loss이다.

Approximation Error와 Estimation Error

이상적으로 우리는 다음과 같은 최적화를 원한다.

하지만 우리가 아는 것은 뿐이므로, 실제로는 다음 식을 통해 모델 학습을 수행한다.

이제 이 모델의 실제 loss에 대해 다음과 같은 식을 적을 수 있다.

즉, 우리는 이 모델 집합 에서 가능한 최적의 loss인 에, loss의 추정에 의해 발생하는 오차 를 더한 모델의 loss 를 얻는다. 이때 를 approximation error ()라 부르고, 를 estimation error라고 한다.

Approximation error는 우리가 가진 모델 집합 의 한계로 인해 발생하는 오차이다. 한편, estimation error는 전체 분포 가 아니라 샘플 를 통해 계산을 수행하기 때문에 발생하는 오차이다. Underfitting과 overfitting은 다음과 같이 해석된다.

  • Underfitting: 주로 의 한계로 인해 approximation error가 높아져 발생한다.
  • Overfitting: 주로 의 한계로 인해 가 정확히 를 근사하지 못하고 estimation error가 높아져 발생한다.

Bias와 Variance

이제 에 대해 가 성립한다고 하자. 또한 아래 식에서 라고 가정하자. 이때 다음이 성립한다.

여기서 첫 번째 항 가 bias를 나타내고, 두 번째 항 가 variance를 나타낸다. 즉, 샘플 의 선택에 따라 모델 출력의 오차가 어떻게 변화하는지를 표현하는 것이 이 두 값이라 할 수 있다.

이 식은 이전의 approximation error, estimation error와 유사하긴 하지만 의미가 조금 다르다. 보통 이 값들은 모델의 복잡도(혹은 표현능력)과 연관된다. (비록 이러한 분석이 보다 복잡한 모델 – MLP, Regularized Model 등 – 에서도 항상 성립하는 것은 아니다.)

  • Simple Model: 모델이 데이터의 정확한 예측에 실패함으로 Bias가 높지만, 전반적으로 에 대해 안정적임으로 Variance가 낮다.
  • Complex Model: 모델이 대부분 데이터를 정확히 예측해 Bias가 낮지만, 전반적으로 에 대해 불안정적임으로 Variance가 높다.

Model Complexity, Bias, Variance, Est. Error, App. Error

앞선 관계들을 정리해 보면 다음과 같다.

Model ComplexityLowMid (Optimal)High
BiasHighLowLow
VarianceLowLowHigh
App. ErrorHighLowLow
Est. ErrorLowLowHigh

References

(1) Shalev-Shwartz, Ben-David, Understanding Machine Learning
(2) Bias-Variance Tradeoff, https://en.wikipedia.org/wiki/Bias-variance_tradeoff