CS/ML DL

딥 러닝: 배치 사이즈(Batch size), 에폭(Epoch), Activation Function, Overfitting

연수구 주정뱅이 2021. 7. 13. 16:58
  • 배치 사이즈(Batch size): 학습 시킬 데이터셋을 한번에 학습하는 것이 비용적, 시간적으로 불리하므로 학습을 용이하게 하기 위해 어떠한 단위로 데이터셋을 쪼개는데, 이러한 단위를 배치라고 한다. 1,000만 개의 데이터를 만 개씩 쪼갠다면, 배치 사이즈는 10,000이고, 이를 1,000번 반복한다. 이러한 과정을 iteration(이터레이션)이라고 한다.
  • 에폭(Epoch): 데이터셋을 반복학습 시키는 만큼의 사이클 수. 1,000만 개의 데이터셋을 5번 학습시켰다면 Epoch은 5이다.

출처: https://www.mauriciopoppe.com/notes/computer-science/artificial-intelligence/machine-learning/glossary/

 

 

 

Activation Function(활성화 함수)

노드의 임계치(Threshold)가 넘었을 경우에만 다음 노드로 신호를 보내는데 이를 가능하게 하는 함수이다. 예시로 Sigmoid, ReLU 등이 있으며, activation function은 비선형 함수여야 한다.

 

 

Sigmoid function의 threshold를 넘었을 경우에만 activate 되었다고 판단하여 신호를 넘겨준다.

 

 

Sigmoid function은 x가 -6보다 작을 때는 0에 가까운 값을 output으로 내보내서 deactivate 상태로 만든다. 반대로 x가 6보다 클 경우엔 1에 가까운 값을 output으로 보내 activate 상태로 만든다.

 

 

 

activation function은 여러가지 종류가 존재한다.

 

 

출처: https://medium.com/@shrutijadon10104776/survey-on-activation-functions-for-deep-learning-9689331ba092

 

보편적으로 ReLU가 구현이 간단하고, 연산비용이 적고, 성능이 일반적으로 좋기 때문이다.

 

 

 

 

Overfitting(과적합), Underfitting(과소적합)

딥러닝 모델을 설계, 튜닝 후 학습을 하다 보면 Training loss는 점점 낮아지는데 Validation loss는 높아지는 시점이 있다. 

출처: https://vitalflux.com/overfitting-underfitting-concepts-interview-questions/

 

모델의 복잡도(complexity)가 문제의 난이도보다 클 경우 overfitting이 발생한다. 예를 들면, 모의고사 문제를 외워서 풀어 모의고사는 100점을 받는데, 정작 수능에서는 틀리는 문제가 더 많아지는 현상에 빗댈 수 있다.

 

underfitting은 문제의 난이도에 비해 모델의 복잡도가 낮을 경우 문제를 제대로 풀지 못하는 현상이다.

 

대체적으로 overfitting이 문제가 되는데, 이를 해결하는 방법은 데이터 증폭(data augmentation)과 드롭아웃(dropout)이 있다.

 

 

 

출처: 스파르타코딩클럽 가장 쉽게 배우는 머신러닝