adam

Deep Learning

[DL] 학습 관련 기술들 - SGD, Momentum, AdaGrad, Adam, optimization, Xavier, He, Batch Normalization

매개변수 갱신 확률적 경사 하강법(SGD) 신경망 학습의 목적은 손실 함수의 값을 가능한 한 낮추는 매개변수를 찾는 것으로 이는 곧 매개변수의 최적값을 찾는 문제이며, 이러한 문제를 푸는 것을 `최적화(optimization)`이라고 한다. 최적의 매개변수 값을 찾기 위한 단서로 매개변수의 기울기(미분)를 이용하는데, 매개변수의 기울기를 구해 기울어진 방향으로 매개변수 값을 갱신하는 일을 반복해서 최적의 값을 향해 다가가는 것이 `확률적 경사 하강법(SGD)`이다. SGD는 다음과 같은 수식으로 표현이 가능하다. 결국 SGD는 기울어진 방향으로 일정 거리만 가겠다는 단순한 방법이다. SGD를 파이썬 코드로 구현하면 다음과 같다. class SGD: def __init__(self, lr=0.01): se..

Deep Learning

[DL] 최적화 - Stochastic Gradient Descent, SGD Momentum, overshooting, Nesterov Momentum, AdaGrad, RMSProp, Adam

확률적 경사 하강법 확률적 경사 하강법은 손실 함수의 곡면에서 경사가 가장 가파른 곳으로 내려가다 보면 언젠가 가장 낮은 지점에 도달한다는 가정으로 만들어졌다. 그러나 가정이 단순하기 때문에 다양한 상황에 잘 대처하지 못하고 학습 속도도 느리기 때문에 성능에 한계가 있다. 고정된 학습률 학습률이란 최적화할 때 한 걸음의 폭을 결정하는 스텝의 크기를 말하며 학습 속도를 결정한다. 확률적 경사 하강법은 지정된 학습률을 사용하는 알고리즘이기 때문에 경험적으로 학습률을 조정할 수밖에 없으며, 이는 효율적이지 않고 최적의 학습률을 정하기 어렵다. 또한 학습률이 고정되어 있기 때문에 최적화가 비효율적으로 진행된다. 학습률이 변화할 수 있다면 처음에는 큰 폭으로 이동하다가 최적해에 가까워질수록 이동 폭을 줄여서 안정..

Junyeong Son
'adam' 태그의 글 목록