
머신러닝 모델 구축의 핵심 중 하나는 새로움 데이터에 대한 test과정을 구축하는 것이다.
방법에는 크게 두 가지가 있다.
홀드아웃 방법은 가장 흔하게 사용되는 train, validation, test로 나누어 검증하는 방법이다.

각 세트가 정확하게 나눠져 있어서 훈련을 하면서 성능 향상되는것을 계속 확인해도 validation과 test 데이터는 훈련에 아무런 영향을 주지 않는다.

k겹 교차검증은 데이터셋을 k개로 나눠서 k-1개로 학습하고 1개로 테스트 하는 방법이다.
이렇게 하면 k번의 test를 할 수 있다. 일반적으로 모델 튜닝을 할 때 많이 사용한다. 왜냐하면 다양한 데이터셋으로 평가할 수 있기 때문에 편향되지 않는 튜닝을 할 수 있기 때문이다.
k = n 으로 k-fold cross validation을 진행하는 방법
이 때, n은 데이터셋의 크기이다.
이 방법은 아주 작은 데이터셋에서 주로 사용된다.
각 fold의 class 비율을 일정하게 맞추는 방법이다.
이렇게 하면 각 fold의 편향과 분산을 일정하게 맞출 수 있다.