머신러닝에서 우리의 목표는 training dataset
기본적으로 머신 러닝 모델은

만약

그림 2b와 같이

그림 3은 예측 오차의 관점에서 과적합 문제를 설명한다. 예측 오차의 변화에 따라 그림 3의 그래프는 아래와 같은 두 개의 구간으로 나눌 수 있다.
- 구간 A: 학습 오차와 테스트 오차가 같이 감소하는 구간 (과소적합, underfitting).
- 구간 B: 학습 오차는 감소하지만, 테스트 오차는 증가하는 구간 (과대적합, overfitting).
머신러닝에서는 구간 A에 있는 모델을 과소적합되었다고 하고, 구간 B에 있는 모델은 과대적합되었다고 한다. 우리의 목적은 학습을 통해 예측모델의 과소적합된 부분을 제거해나가면서 과대적합이 발생하기 직전에 학습을 멈추는 것이다. 머신러닝에서는 과대적합을 방지하기 위한 여러 방법이 연구되었으며, 일반적으로 validation set
Validation dataset

그림 4는
- 단계 (1): 주어진 데이터셋을
, , 로 나눈다. 일반적으로 각 데이터셋의 비율은 60:20:20으로 설정한다. - 단계 (2):
에 대한 예측 오차를 최소화하도록 모델을 학습시킨다. - 단계 (3):
에 대한 모델의 예측 오차를 계산한다. - 단계 (4): 만약
에 대한 예측 오차가 증가했다면 학습을 종료한다. 그렇지 않을 경우에는 (2)로 돌아가서 학습을 계속 진행한다. - 단계 (5):
에 대한 예측 오차를 측정함으로써 학습된 모델의 최종 성능을 평가한다.
기존의

그림 5는
처음 머신 러닝을 접하면 validation dataset의 개념을 정확히 이해하지 못 하거나, validation dataset과 test dataset의 개념을 혼동하기 쉽다. 아래는 혼동하기 쉬운 training dataset, validation dataset, test dataset의 용도를 요약한 것이다.

Validation dataset과 test dataset의 개념 중 혼동하기 쉬운 몇 가지를 요약하면 아래와 같다.
- Validation dataset은 학습 과정에서 참조할 수 있지만, test dataset은 그렇지 않다.
- Training dataset은 모델의 인자값 (인공신경망에서는 가중치)을 결정하는데 이용되지만, validation dataset은 이용되지 않는다. Validation dataset은 오직 언제 학습을 멈출지를 판단하기 위해 이용된다.
- Validation dataset과 test dataset은 모두 모델의 성능 평가에 이용된다. 그러나 validation dataset에 대한 성능은 학습을 중단하는 시점을 결정하기 위해 이용되고, test dataset에 대한 성능은 모델의 최종 정확도를 평가하기 위해 이용된다.
'지능형시스템 > 머신러닝' 카테고리의 다른 글
[머신 러닝/딥 러닝] Metric Learning의 개념과 Deep Metric Learning (1) | 2020.09.06 |
---|---|
[머신 러닝/딥 러닝] CGCNN: 인공지능과 소재 개발 (Artificial Intelligence and Material Discovery) (4) | 2020.03.20 |
[머신 러닝] 앙상블 (Ensemble) 방법의 이해 (0) | 2019.12.24 |
[머신 러닝/딥 러닝] 인공신경망 (Artificial Neural Network, ANN)의 종류와 구조 및 개념 (3) | 2019.12.23 |
[머신 러닝/딥 러닝] 그래프 합성곱 신경망 (Graph Convolutional Network, GCN) (19) | 2019.11.28 |