연구

Ranger optimizer

햎피 2023. 4. 12. 02:51
반응형

논문을 보다가 Ranger optimizer라는 것을 봤다.

여러 최적화 기법들을 봤는데 Ranger는 처음보는 것 같아 기록을 남겨본다.

 

Ranger는 Radam + Lookahead 이다.

 

Radam

- Rectified Adam이라서 RAdam이다.

- Adam : adaptive learning rate를 기반으로 하고, 상대적인 업데이트 양에 따라 step size를 조정해줌. 

-adaptive learning 의 경우 bad local optima convergence problem에 빠질 수 있다. 학습 초기에 샘플이 부족할 경우, learning rate의 분산이 커지고, 이에따라 최적이 아닌 local optima에 너무 일찍 도달하여 학습이 거의 일어나지 않는 현상이다.

 

- 이를 해결하기 위해 Radam이 나왔고, adaptive learning rate term의 분산을 rectify해준다. 분산식을 거꾸로 이용해 rectification term을 구한다. Adam의 수식에 rectification을 곱해줌으로써, 학습 초기에 발생할 수 있는 bad local optima problem을 해결할 수 있다.

 

Lookahead

-suboptimal 하이퍼파라미터에 덜 민감해서 하이퍼파라미터 튜닝 필요성이 줄어듦

-1) k번동안 다른 optimizer 이용해서 업데이트함 2)업데이트된 방향에서 1 step back함. 3) 그 지점에서 다시 k번 업데이트

-이 과정을 반복하는게 lookahead

- Adam, SGD로 빠져나오기 힘든 local minima를 빠져나올 수 있음. 그러면 아래와 같은 그림이 됨

그렇다면 이제 Ranger를 보자!!

 

-RAdam과 LookAhead는 상호보완적이다.

- RAdam은 학습 시작할 때 유리하다. dynamic rectifier를 이용해서 분산을 기반으로 Adam의 adaptive momentum을 조절한다. 그래서 자동으로 warm-up을 할 수 있게한다.

-LookAhead는 학습 전반적으로 안정적인 exploration을 할 수 있게해서 하이퍼파라미터 튜닝 필요성을 줄여준다.

-Ranger는 LookAhead의 optimizer로 RAdam을 사용한것이다.

 

반응형