본문 바로가기

딥러닝

overfitting / underfitting / early stopping

1. overfitting 과 underfitting

- machine learning model은 training loss가 작아지도록 학습

- 그러나 너무 train data에 맞게끔 학습을 하면 overfitting이 발생

- overfitting: training loss는 감소하지만 test loss는 증가하는 부분

- underfitting: training loss와 test loss가 같이 감소하는 부분

- 목표: underfitting 부분을 줄여나가면서 overfitting 발생하기 전에 학습을 멈추는 것

 

2. 모델의 학습 과정

- 위의 목표를 위해 validation set을 활용

- dataset을 train, valid, test dataset으로 분류

- train dataset으로 학습 -> valid dataset으로 accuracy, loss 계산

- 만약 valid loss가 증가했다면 학습 중단

- 그렇지 않다면, 학습 계속 진행

- test dataset으로 모델의 최종 accuarcy 계산

(정리)

- train: 오직 모델의 학습(= 최적의 parameter를 찾는 것)을 위한 dataset

- valid: 학습이 된 모델을 검증하기 위한 dataset / 학습이 된 모델 중 가장 좋은 모델을 고르기 위한 dataset

- test: 모델의 최종 성능을 평가하기 위한 dataset

 

3.  overfitting과 underfitting 해결 방안

- early stopping: validation loss가 지속적으로 커져서 더 이상 작아지지 않을 것 같을 때, 학습을 멈추는 방법

- 즉, validation loss가 최소일 때까지만 학습

 

0. 출처

https://untitledtblog.tistory.com/158

- https://wkddmswh99.tistory.com/10

 

'딥러닝' 카테고리의 다른 글

learning rate  (0) 2023.04.08
batch size / epoch / iteration  (0) 2023.04.07