728x90
반응형
SMALL

iteration 3

학습률(Learning rate) & 학습률 감소/계획법(Learning rate Decay / Scheduling)

model.compile(optimizer = tf.keras.optimizers.Adam(learning_rate = lr_decayed_fn) , loss = 'sparse_categorical_crossentropy' , metrics = ['accuracy'] 신경망 학습이 더 잘되도록 하는 방법 학습률(Learning rate, lr) 매 가중치에 대해 구해진 기울기 값을 얼마나 경사 하강법에 적용할지를 결정하는 하이퍼파라미터 해당 지점에서의 기울기를 구하여 기울기가 감소하는 방향으로 이동 학습률은 얼마나 이동할지를 조정하는 하이퍼파라미터 경사 하강법이 산길을 내려가는 과정이라면 학습률은 보폭을 결정 학습률이 크면 보폭이 크니 Iteration 마다 성큼성큼 이동하고, 작으면 보폭이 작아 조금씩..

IT 2022.06.07

배치 사이즈(Batch Size)

배치 사이즈는 주로 2의 제곱수 배치 사이즈가 작을 때 배치 사이즈를 너무 작게 설정하면 경사 하강법을 통한 가중치 갱신이 불안정하여 최적점에 이르기까지 많은 Iteration을 필요로 한다는 단점 하지만 노이즈가 상대적으로 높기 때문에 지역 최적점(Local Minima)에 빠져나올 확률이 높아진다는 장점 배치 사이즈가 클 때 경사 하강법 과정에서 가중치 갱신이 안정적으로 일어나기 때문에 학습 속도가 빨라짐 배치 사이즈가 1인 확률적 경사 하강법보다 미니 배치 사용한 미니 배치 경사 하강법이 더 빠르게 수렴 큰 배치 사이즈가 좋다고 배치 사이즈를 너무 크게 설정하면 메모리를 초과해버리는 Out-of-Memory 문제 발생 최적의 배치 사이즈 배치 사이즈가 클 때 학습이 안정적으로 잘 되는 것은 사실이지..

IT 2022.06.05

옵티마이저(Optimizer)

옵티마이저는 경사를 내려가는 방법을 결정 일반적인 경사 하강법(GD)에서는 모든 입력 데이터에 대한 손실 함수의 기울기를 계산한 후 가중치 업데이트 즉, Iteration 마다 모든 데이터를 다 사용 입력 데이터가 적다면 이 방법으로도 빠르게 가중치 갱신 가능 실제로는 큰 데이터를 다루기 때문에 모든 데이터에 대해 손실을 계산하는 과정이 굉장히 오레 걸림 확률적 경사 하강법(Stochastic Gradient Descent, SGD) 전체 데이터에서 하나의 데이터를 뽑아서 신경망에 입력한 후 손실을 계산 그 손실 정보를 역전파하여 신경망의 가중치를 업데이트 Iteration 마다 1개의 데이터만 사용 가중치를 빠르게 업데이트 할 수 있다는 장점 1개의 데이터만 보기 때문에 학습 과정에서 불안정한 경사 하..

IT 2022.06.04
728x90
반응형
LIST