본문 바로가기

딥러닝

batch size / epoch / iteration

1. batch size

- train dataset을 여러 개의 작은 그룹으로 나누었을 때, 하나의 작은 그룹에 속하는 data의 수

(- 여러 개의 작은 그룹으로 나누는 이유: 한 번에 학습시키면 리소스를 비효율적으로 사용하게 됨)

- ex) 학습할 train dataset = 5,000개 / 1,000개씩 학습시키게 되면 batch size = 1,000


2. epoch

- 전체 train dataset이 신경망을 통과한 횟수

- 즉, 전체 train dataset을 몇 번 학습했는가 

- ex) 학습할 train dataset = 5,000개 / batch size = 1,000 / 1 epoch 의미 = 5,000개의 dataset이 하나의 신경망을 한 번 통과함

 

3. iteration

- 1 epoch를 할 때, 필요한 mini-batch의 개수 (하나의 mini-batch마다 한 번의 parameter 업데이트 발생)

- 즉, 1 epoch를 할 때, 필요한 parameter 업데이트 횟수

- ex) 학습할 train dataset = 5,000개 / 1,000개씩 학습시키게 되면 batch size = 1,000 / mini-batch = 5개 = iteration / 즉, 1,000개의 dataset 단위로 parameter를 업데이트하면서 학습을 함 -> 이걸 총 5번 반복

 

4. 정리

 

0. 출처

- https://losskatsu.github.io/machine-learning/epoch-batch/#1-%EC%82%AC%EC%A0%84%EC%A0%81-%EC%9D%98%EB%AF%B8

- https://heytech.tistory.com/386

 

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

learning rate  (0) 2023.04.08
overfitting / underfitting / early stopping  (0) 2023.04.07