EDUCATION/DSS Online 6기

DAY44 - 과최적화와 교차검증

Kululu_ 2021. 3. 19. 15:01

과최적화

- 과최적화는 우리가 만든 모형이 모형을 만드는 데에 이용한 샘플 데이터에 대해 과도하게 최적화된 것을 의미합니다.

- 과최적화는

    1. 데이터 갯수에 비해 독립변수의 갯수가 과도하게 크거나

    2. 독립 변수끼리 서로 독립이 아닌 경우

  에 발생하게 됩니다.

- 과최적화가 된 모형의 경우 모형을 만들 때 사용하지 않은 데이터에 대해서는 오차가 커지는 문제가 있으며, 샘플 데이터에 대한 의존도가 높기 때문에 조금만 다른 샘플을 집어 넣어도 모형의 계수값이 크게 달라지는 문제가 있습니다.

 

데이터셋 분리

- 과최적화 문제가 발생하는 것을 우려하여 모형의 성능을 검증할 데이터셋을 따로 분리시켜 놓을 필요가 있습니다.

- 보유한 데이터에서 

    1. 모형을 만드는 데에 사용할 훈련 데이터

    2. 모형의 성능을 검증하는 데에 사용할 검증 데이터

  로 나누어 활용해주어야 합니다.

- 그리고 모형의 성능을 확인하고자 할 때는 검증 데이터를 이용해 결정계수 $R^2$값을 계산해서 비교해야 합니다.

$$ R^{2} = \frac{ESS}{TSS} = 1 - \frac{RSS}{TSS} $$

 

 

K-폴드 교차검증

- 보유한 데이터를 K개의 부분집합으로 나눈 후 그 중 하나를 검증용 데이터로 활용하고, 나머지 부분집합들을 학습용 데이터로 사용하는 방식입니다.

- K개의 부분집합들이 각각 한 번씩 검증용 데이터가 될 수 있도록 동일한 과정을 K번 반복해 검증을 실시하고 그 값을 평균내어 최종 성능을 계산합니다.

위의 결과를 통해 알 수 있듯이 데이터를 어떻게 나누느냐에 따라서 검증 데이터로 평가한 성능이 0.58 ~ 0.83까지 매우 다양합니다.

 

따라서 교차검증을 통해 선형회귀모형의 성능을 평가해주어야 합니다.

 

교차검증은 모형의 파라미터 값을 정해주는 것은 아니기 때문에, 여러 방법으로 선형회귀모형을 만든 경우 어떤 방법을 최종 선택할 지를 결정하는 데에 참조하면 좋습니다.