본문 바로가기

Deep Learning

bias-variance tradeoff

데이터에 기반한 Model이 가지는 Error는 3가지로 표현할 수 있다.

Error(X) = noise(X) + bias(X) + variance(X)

nosie는 Data가 가지는 본질적인 것이므로 irreducible error 라고 표현한다.

bias/variance는 Model에 따라 변화하는 것이므로 reducible error라고 표현한다.

 

bias는 평균적으로 우리의 가설이 얼마나 실제 현상과 떨어져 있는지를 나타낸다.

즉, bias가 낮을수록 실제 현상에 유사하며, bias가 높을수록 실제 현상과 멀어진다.

bias는 Train Data를 바꿈에 따라서 알고리즘의 평균 정확도가 얼마나 많이 변하는지 보여준다.

 

variance는 얼마나 다양한 현상이 분포되어 있는가를 나타낸다.

즉, variance가 높을수록 다양한 현상에 대하여 처리가 되고 낮을수록 일부분의 현상에 대하여 처리가 된다.

variance는 특정 입력 데이터에 대하여 알고리즘이 얼마나 민감한지를 나타낸다.

 

이상적인 모델은 Train Data에서 반복되는 규칙성을 정확하게 잡아내면서 실제 Data(학습되지 않은 Data)를 일반화 할 수 있는 모델이다. 아래 예시를 통해 좀 더 자세히 설명하겠다.

 

위 그림은 같은 Data에 다른 Model을 이용해 학습 시킨 것이다.

 

선형 모델은 underfit이다.

- 데이터 내의 모든 정보를 고려하지 못하고 (high bias) 있으며 새로운 Data가 들어온다고 하더라도 모델의 형태는 크게 변하지 않을 것(Low variance)이다.

 

다항 함수 모델은 overfit이다.

- 주어진 데이터에 대하여 잘 설명(Low bias)하고 있지만 새로운 Data가 들어온다면 다른 형태로 변하게 될것(high variance)이다.

 

즉, 이상적인 모델이 되기 위해서는 선형 모델과 같은 상황과 다항 함수 모델의 상황을 피해야한다.

하지만 실제 상황에서는 두 가지를 모두 만족하는 것은 불가능하므로 좋은 성능을 내기 위해서는 tradeoff가 발생할수 밖에 없다. 이를 bias-variance tradeoff 라고 한다.

'Deep Learning' 카테고리의 다른 글

fit() vs fit_generator in keras  (0) 2024.02.27
CONNX  (0) 2022.10.04
ONNX  (0) 2022.08.31
TensorRT  (0) 2020.08.26
Browse State-of-the-Art (SOTA)  (0) 2020.08.11