728x90
epoch, iter
(한 번의 epoch는 인공 신경망에서 전체 데이터 셋에 대해 forward pass/backward pass 과정을 거친 것을 말함. 즉, 전체 데이터 셋에 대해 한 번 학습을 완료한 상태)
[출처] 머신 러닝 - epoch, batch size, iteration의 의미|작성자 예비개발자
메모리의 한계와 속도 저하 때문에 대부분의 경우에는 한 번의 epoch에서 모든 데이터를 한꺼번에 집어넣을 수는 없습니다. 그래서 데이터를 나누어서 주게 되는데 이때 몇 번 나누어서 주는가를 iteration, 각 iteration마다 주는 데이터 사이즈를 batch size라고 합니다.
전체 2000 개의 데이터가 있고, epochs = 20, batch_size = 500이라고 가정합시다.
그렇다면 1 epoch는 각 데이터의 size가 500인 batch가 들어간 네 번의 iteration으로 나누어집니다.
그리고 전체 데이터셋에 대해서는 20 번의 학습이 이루어졌으며, iteration 기준으로 보자면 총 80 번의 학습이 이루어진 것입니다.
'Data-science > machine learning' 카테고리의 다른 글
rdkit 설치하기 (1) | 2022.05.15 |
---|---|
[pandas] pandas dataframe 이용해서 그룹별로 train/val 나누기 (0) | 2022.01.06 |
dtreeviz IndexError, decision tree visualization (0) | 2020.11.11 |
머신러닝 이미지 데이터 전처리 주의사항 (0) | 2019.02.12 |
SVM 공부 (0) | 2019.02.12 |