본문 바로가기
AI/머신러닝

K-겹 교차검증(k-fold cross-validation) 이란?

by 남오공 2022. 3. 7.
728x90

k-겹 교차검증(CV)이란

전체 데이터셋을 k개의 fold로 나누어 k번동안 다른 fold 1개를 test data 그리고 나머지(k-1)개의

fold를 train data로 분할하는 과정을 반복하며 train, test data를 교차 변경하여 검증하는 방법이다.

 

k fold cv를 하기 위해 보통 5~10개의 fold를 사용하며 최적의 k값을 찾기 위한 실험적 검증이 필요하다.

아래와 같은 경우에는 CV 수행 시 오히려 모델 성능이 악화될 수 있다.


- 순서가 고려된 데이터(시계열 데이터)가 shuffle 되어 있지 않은 경우
- 데이터 불균형(Data Imbalance) → 층화 교차검증(Stratified K-fold CV)을 통해 보완
- 각기 다른 fold에 같은 데이터(i.e., duplicate)가 존재할 경우
- Natural Group(e.g., 같은 사용자/머신 데이터) 데이터가 여러 fold에 shuffle 된 경우

댓글