SWA (Stochastic Weight Averaging)

  • 신경망 모델 다수를 앙상블링 하는 방법은 대회등에서 꾸준히 정확도를 높이기 위해 사용되어왔던 방법
  • 다수의 여러개의 모델을 만들기 위해서는 하나를 만들때보다 N배의 컴퓨팅 자원 필요. 이를 효율적으로 학습하고자 한번의 학습으로만 다양한 모델을 반영하도록 유도
    • Snapshot Ensembling – SGD가 local optima (국소최적화) 지점을 찾기위해 계속 공간을 돌아다니도록 하고, 이를 반복하여 다양한 가중치들을 찾고, 이를 평균냄
    • Fast Geometric Ensembling (FGE) – 훈련율 (learning rate)를 consine대신 linear하게 설정하여 조금더 빠르게 학습이 될수 있도록 함. 여러 골짜기(local optima)들이 중간중간 박혀있는 것이 아니라, 보통은 계곡이 계속되기 때문
  • SWA에서는 굳이 여러 모델들의 파라미터를 가지고 있지않고, 프로그래밍에서 값을 업데이트 하는 것처럼 weight를 업데이트 한 다음, 최종적으로 돌때는 이미 업데이트가 되어있는 방식
여러개의 국소값들을 찾아 이를 합치는 방식 (Snapshot Ensembling)
실질적인 국소 최적화 지점 (Fast Geometric Ensembling)
Stochastic Weight Averagin 에서 한번씩 값을 업데이트 하는 방법

답글 남기기