더북(TheBook)

Note ≡ | 훈련과 검증, 테스트 데이터셋

수집된 데이터셋은 크게 훈련(training)과 테스트(test) 데이터셋으로 분리하여 사용됩니다. 하지만 종종 훈련 데이터셋을 다시 훈련과 검증(validation) 용도로 분리해서 사용하는 경우를 볼 수 있는데 이들 간의 차이를 알아봅시다.

▲ 그림 1-6 훈련과 검증, 테스트 데이터셋

일반적으로 훈련과 테스트 용도의 데이터셋만 필요할 것 같은데, 검증 데이터셋을 사용하는 이유는 모델 성능을 평가하기 위해서입니다. 즉, 훈련 데이터셋으로 모델을 학습시킨 후 모델이 잘 예측하는지 그 성능을 평가하기 위해서 사용합니다. 하지만 검증 용도의 데이터셋은 훈련 데이터셋의 일부를 떼어서 사용하기 때문에 학습에 사용되는 데이터셋의 양이 많지 않다면 검증 데이터셋을 사용하는 것은 좋지 않습니다.

그러면 모델 성능의 평가는 왜 필요할까요? 첫 번째는 테스트 데이터셋에 대한 성능을 가늠해 볼 수 있기 때문입니다. 딥러닝의 목적은 새롭게 수집될 데이터에 대해 정확한 예측을 하는 데 있습니다. 이때 검증 데이터셋을 사용해서 새롭게 수집될 데이터에 대해 예측을 평가해 볼 수 있습니다. 두 번째는 모델 성능을 높이는 데 도움을 줍니다. 예를 들어 훈련 데이터셋에 대한 정확도는 높은데 검증 데이터셋에 대한 정확도가 낮다면 훈련 데이터셋에 과적합이 일어났을 가능성을 생각해 볼 수 있습니다. 이 경우 정규화(regularization)를 하거나 에포크(epoch)를 줄이는 방식으로 과적합을 막을 수 있습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.