5 k겹 교차 검증
앞서 데이터가 충분히 많아야 모델 성능도 향상된다고 했습니다. 이는 학습과 테스트를 위한 데이터를 충분히 확보할수록 세상에 나왔을 때 더 잘 작동하기 때문입니다. 하지만 실제 프로젝트에서는 데이터를 확보하는 것이 쉽지 않거나 많은 비용이 발생하는 경우도 있습니다. 따라서 가지고 있는 데이터를 십분 활용하는 것이 중요합니다. 특히 학습셋을 70%, 테스트셋을 30%로 설정할 경우 30%의 테스트셋은 학습에 이용할 수 없다는 단점이 있습니다. 이를 해결하기 위해 고안된 방법이 k겹 교차 검증(k-fold cross validation)입니다. k겹 교차 검증이란 데이터셋을 여러 개로 나누어 하나씩 테스트셋으로 사용하고 나머지를 모두 합해서 학습셋으로 사용하는 방법입니다. 이렇게 하면 가지고 있는 데이터의 100%를 학습셋으로 사용할 수 있고, 또 동시에 테스트셋으로도 사용할 수 있습니다. 예를 들어 5겹 교차 검증(5-fold cross validation)의 예가 그림 13-7에 설명되어 있습니다.
그림 13-7 | 5겹 교차 검증의 도식