22.03.24 딥러닝 학습과정3 - Epochs / Batch Size / Iteration

2022. 3. 24. 18:52카테고리 없음

AI의 학습 : 데이터의 input에 대한 실제정답과 pred(예측값)의 오차(loss)로부터 optimizer(최적화방법 = Gradient Descent) 을 통해서 가중치(w, Hypothesis에 있는 w) 를 업데이트하는 것.

 

사람의 학습 : 문제지의 문제에 대한 실제정답과 학생의정답의 오차로부터 채점하면서 부족한 것 업데이트.

 

Epoch : 전체데이터에 대해서 순전파(Forward propagation)과 역전파(Backpropagation)이 끝난 상태. 전체 데이터에 대한 학습을 한 번 끝낸 상태

epoch 수가 너무 많으면 overfitting이, 너무 적으면 underfitting이 발생할 수 있다.

(ex. 50 epoch = 전체 데이터(한 문제지 전체)를 50번 학습한다.)

 

Batch Size : 몇 개의 데이터 단위로 매개변수를 업데이트 하는가. batch의 크기

(ex. 1 epoch = 2000문제, batch size = 500문제면, 500문제마다 채점(loss계산) 및 weight를 업데이트 하는 것이다.)

 

Iteration = Step :  한 번의 epoch를 끝내기 위해 필요한 batch의 = 전체 데이터수/배치 크기 (2000문제/500문제 = iteration = 4, 한 epoch당 4번의 매개변수 업데이트가 일어난다.)