반응형
배치 사이즈(batch size) vs 에포크(epoch) vs 반복(iteration)의 차이
딥러닝을 하다보면 에포크(Epoch), 배치(Batch), 반복(iteration)이라는 단어를 많이 접하게 된다. 비슷하면서도 다른 이 단어들을 이번 포스팅에 정리해 보려고 한다.
1. batch size의 의미
batch size란 정확히 무엇을 의미할까요? 전체 트레이닝 데이터 셋을 여러 작은 그룹을 나누었을 때 batch size는 하나의 소그룹에 속하는 데이터 수를 의미합니다. 전체 트레이닝 셋을 작게 나누는 이유는 트레이닝 데이터를 통째로 신경망에 넣으면 비효율적이 리소스 사용으로 학습 시간이 오래 걸리기 때문입니다.
2. epoch의 의미
딥러닝에서 epoch는 전체 트레이닝 셋이 신경망을 통과한 횟수 의미합니다. 예를 들어, 1-epoch는 전체 트레이닝 셋이 하나의 신경망에 적용되어 순전파와 역전파를 통해 신경망을 한 번 통과했다는 것을 의미합니다.
3. iteration의 의미
마지막으로 iteration은 1-epoch를 마치는데 필요한 미니배치 갯수를 의미합니다. 다른 말로, 1-epoch를 마치는데 필요한 파라미터 업데이트 횟수 이기도 합니다. 각 미니 배치 마다 파라미터 업데이터가 한번씩 진행되므로 iteration은 파라미터 업데이트 횟수이자 미니배치 갯수입니다. 예를 들어, 700개의 데이터를 100개씩 7개의 미니배치로 나누었을때, 1-epoch를 위해서는 7-iteration이 필요하며 7번의 파라미터 업데이트가 진행됩니다.
반응형
'WEB' 카테고리의 다른 글
[Java Script] javascript 오브젝트 값으로 배열 정렬하기 (0) | 2021.11.20 |
---|---|
[Java Script] 오래걸리는 함수 기다렸다 실행시키기 async, await (0) | 2021.11.19 |
[실시간 검색어 어플출시] Google Play Store (0) | 2021.11.17 |
[Python] Selenium 을 이용하여 이미지 다운 폴더 변경 (0) | 2021.11.15 |
AJAX 에러 처리하는법($.ajax .done .fail 사용시) Validation Message (0) | 2021.11.12 |