Gradient Descent
가중치를 업데이트할 때 기울기의 크기에 비례하여 반대 방향으로 가중치를 조절한다.
Stochastic Gradient Descent
주어진 data 내에서 batch size가 1인 Mini-Batch를 무작위적으로 선택하여 gradient descent를 수행한다. batch size가 작기 때문에 수렴 과정이 매우 불안정하며 이를 해결하기 위해 batch size를 조절한 mini-batch SGD가 있다.
Momentum
gradient descent와 달리 gradient를 가속도로 사용한다. 따라서 parameter 업데이트를 위한 속도 를 다음과 같이 정의한다.
위 식에서 알 수 있듯이 gradient가 0이어도 이 되기 때문에 saddle point나 local minima로 인한 문제를 어느 정도 개선할 수 있다.
RMSprop
는 gradient의 exponentially weighted average of squares로 를 통해 이전 값에 얼마나 영향을 받을 지를 결정할 수 있으며 따라서 은 gradient의 RMS와 유사한 식이 된다. 여기서 은 분모가 0에 가까워지는 것을 방지하기 위한 값이다. 는 최근의 gradient가 크면 learning rate를 줄여주고 gradient가 작으면 learning rate를 키워주기 때문에 학습 과정에서 진동을 줄이고 Early Stopping을 방지하는 데에 도움이 된다.
Adam
momentum과 RMSprop이 합쳐진 형태로, 학습 속도가 관성을 가지며 최근의 gradient에 따라 learning rate가 변하는 학습 방식이다.