VVNN
Batch Size 본문

batch size
학습 시 메모리 부하와 속도 저하로 인해 전체 training dataset을 여러 소그룹으로 쪼갤 때 이 소그룹 안에 속하는 데이터의 수.
- training dataset이 5000개일 때, batch size=100으로 설정해주면 mini batch는 50개가 있는 것.
- 일반적으로 32, 64 크기의 mini batch가 가장 성능이 좋다고 함.
- batch size가 작으면 전체 데이터를 여러 번 쪼개 학습하게 되므로 사용되는 메모리가 줄어든다. 너무 작은 경우에는 적은 데이터를 대상으로 가중치를 업데이트하고, 업데이트가 자주 발생하므로 불안정해진다.
- batch size가 크면 속도가 빠르고 안정적인 학습이 가능하다. 너무 큰 경우에는 한번에 처리하는 데이터 양이 많아지고 메모리 부족 문제가 발생할 수 있음.
epoch
전체 training dataset이 하나의 신경망을 통과한 횟수.
epoch 값이 너무 작으면 underfitting이, 너무 크면 overfitting이 발생할 수 있음.
iteration
1 epoch를 마치는데 필요한 mini batch의 갯수이자 파라미터 업데이트 횟수. 각 mini batch마다 파라미터 업데이트가 진행됨.
- 5000개의 training dataset을 batch size=100으로 하여 50개의 mini batch로 나누었다면, 1 epoch를 마치기 위해 50번의 iteration이 필요하며 50번의 파라미터 업데이트가 진행됨.
'스터디' 카테고리의 다른 글
Regularization (0) | 2021.08.06 |
---|---|
Optimizer (0) | 2021.08.03 |
Activation Function (0) | 2021.08.03 |
성능 평가를 위한 Segmentation Metrics (0) | 2021.08.03 |
github에 업로드 (0) | 2021.07.29 |