IT/Paper

[Optimization] SGDR: STOCHASTIC GRADIENT DESCENT WITH WARM RESTARTS, ICLR 2017

성진팍 2021. 3. 6. 13:20

회사 과제에 적용해봤었음.  SGD 사용 시, 그냥 base보다 성능 좋았음.  하지만 adaptive momentum 류 optimizer에서는 base보다 성능 떨어졌었음. warm start를 주기별로 합쳐서 앙상블 모델을 free로 얻는 효과가 있으나 원래 모델이 앙상블로 쓰였을 경우는 그닥 큰 메리트가 없었다. 

꽤 옜날 논문이긴 하지만 아주 간단하게 시도해볼 수 있는 아이디어였다.

<Introduction>

주기적으로 LR을 바꿔주면서 로컬 미니마를 피하기 위한 방법. 이때 주기는 cosine annealing 방법으로 적용함. (아래 그래프가 LR 주기를 나타내는 것임) 그리고 덤으로 주기 수 만큼 앙상블 모델을 얻어서 더 높은 정확도에 도달하였다고 함

<Method>

i번째 학습단계(epoch)에서 LR은 아래와 같이 cosine annealing 으로 계속 감소됨

1. 초기 학습률 ηmax 및 ηmin을 결정할 것.  Tcur는 마지막 재시작 이후 수행 된 Epoch 횟수를 말한다.

2. 주기 수를 결정한다. 이 수가 앙상블 모델 수임

3. 위 하이퍼파라미터들이 결정되면 LR을 코사인 형태로 최대->최소로 낮추어가며 학습이 진행됨. 아래 그래프가 각 epoch별 LR변화 말하는 것임.  아래 그림은, 1.0이 max LR임 

4. LR이 설정한 ηmin 도달했을 때 사이클이 종료됨. 다음 최대 ηmax 에서 다시 다음 주기가 시작됨. 이때 재시작할때마다 다른 모델이 생겨날수있음. 하지만 지니고 있는 weight들에 대한 restart는 아니기떄문에 Warm start라 부르는것같다. 암튼 얻은 주기수만큼 앙상블 모델 만들어서 성능 향상했다고 함

 

출처

arxiv.org/abs/1608.03983