AIMS Study Blog

Cross Validation 본문

통계

Cross Validation

hyenzzang 2023. 6. 8. 11:11

Q. Cross Validation은 무엇이고 어떻게 해야하나요?

Cross Validation

  • 데이터를 Train set과 Test set으로만 나누어 학습 및 평가를 할 경우 내가 만든 모델이 Test set에 대해서만 잘 작동할 수 있다.
  • 이렇듯 모델 과적합이 일어나면 다른 데이터를 사용했을 때 예측을 잘 수행할 수 없게 된다.
  • 고정된 Train 및 Test set으로부터 발생할 수 있는 문제를 해결하고자 하는 것이 바로 교차검증 (cross validation)이다.
  • 아래 그림처럼 전체 데이터를 k개의 subset으로 나누고 Test set을 중복없이 바꾸어가면서 k번의 평가를 진행할 수 있다. 이를 K-fold cross validation이라 한다.
  • k개의 평가 값에 대해 평균을 내어서 최종적인 모델의 성능으로 사용할 수 있다.

출처: scikt-learn

  • Cross validation의 장점
    • 모든 데이터셋을 평가에 사용할 수 있다. 이를 통해 데이터 편향 및 과적합을 방지할 수 있다.
    • K개의 성능 결과를 통합하여 하나의 결과를 도출하기 때문에 보다 일반화된 모델 성능 평가가 가능하다.
  • Cross validation의 단점
    • 반복 횟수가 많아서 모델 학습 및 평가 시간이 길어진다.
  • 데이터 클래스가 불균형한 경우에는 Stratified k-fold cross validation을 사용하여 데이터 클래스별 분포를 고려하여 폴드 세트를 만들어야 한다.
  • 전체 데이터 중 p개의 샘플을 선택하여 그것을 모델 검증에 사용하는 Leave-p-out cross validation 방법도 존재한다. 이 방법은 데이터 폴드 세트의 경우의 수가 매우 커서 계산 시간에 대한 부담이 크다.

Reference

https://m.blog.naver.com/ckdgus1433/221599517834
https://huidea.tistory.com/30

'통계' 카테고리의 다른 글

로그함수 (log)  (0) 2023.06.04
Log 함수를 사용하는 이유  (0) 2023.06.04
Bias를 통제하는 방법  (0) 2023.05.27
Bias 통제 방법  (0) 2023.05.25
필요한 표본의 크기를 계산하는 방법  (0) 2023.05.19
Comments