Data Science/Deep Learning

2. 경사 하강 학습법 - 경사 하강 학습법

HJChung 2020. 4. 4. 19:08

앞서 학습-최적화 이론-경사 하강 학습법 에 대한 개념을 이해하였으니, 수학적으로 어떻게 표현되는지를 알아보도록 하겠습니다. 

 

1) 최적화 이론이란

다시 한번 자세히 살펴보면, 

  • 가능한 모든 해 중 최적의 해(이게 최소값이 될 수도 있고, 최대값이 될 수도 있습니다.)를 찾는 문제를 해결하는 이론입니다.
  • 이를 '딥러닝 네트워크 학습'에 접목시켜보면, 손실함수(Loss Function)이 최소가 되게 하는 Training Parameter를 찾는 문제가 되는 것 입니다. 

2) 최적화 문제를 풀기위한 방법으로는

  • 분석적 방법(함수의 모든 구간을 수식으로 알 때 사용하는 수식적 해석 방법) 과 
  • 수치적 방법(함수의 형태와 수식을 알지 못 할때 사용하는 계산적인 해석 방법)이 있습니다. real world..(?) 에서는 대부분 함수의 형태와 수식을 알지 못 하므로 수치적 방법을 사용하는데, 이 계산적인 해석 방법중 가장 대표적인 것이 경사하강 법 인 것입니다. !

3) 경사 하강 학습법의 종류

1. 단순 경사하강 학습법 --> 인공지능, 머신러닝, 딥러닝 입문 261p 보고 정리하기

그러나 대부분의 문제는 비볼록 함수일 것이고 비볼록 함수에서  단순 경사하강법을 사용할 경우, 

  • Local Minimum: 초기값에 따라 Local Minimum에 빠질 위험이 있습니다.  
  • Saddle Point: 기울기가 0이지만 극값이 아닌 지점이라 단순경사하강법으로는 기울기가 0인 saddle point에서 벗어나지 못합니다. 

그래서 나타난 심화 경사 하강 학습법이

2. Momentum

: 돌이 굴러 떨어지듯, 이동 벡터를 이용해 이전 기울기에 영햐을 받도록 하는 방법

장점) 관성을 이용하면 Local Minimum과 noise에 대처할 수 있습니다. 

단점) 이동벡터(Vt)를 추가로 이용하므로, 경사 하강법에 비해 2배의 메모리를 사용합니다. 

 

3. AdaGrad (Adaptive Gradient)

: 변수별로 학습율이 달라지게 조절하는 알고리즘

장점) Element-wise 제곱으로 gt가 커져서 학습이 많이 된 변수는 학습률을 감소시키고, 그렇지 못한 변수들이 학습 될 수 있도록 합니다.

단점) gt가 계속해서 커지고 한 번 커지면 줄어들지 않기 때문에, 학습이 오래 진행되면 더이상 학습이 이루어지지 않습니다. 

 

4. RMSProp

: AdaGrad의 단점을 개선한 방법으로, 합 대신 지수평균을 사용합니다. 

장점) 변수 간의 상대적인 학습율 차이는 유지하면서 gt가 무한정 커지지 않아 학습을 오래 할 수 있습니다. 

 

5. Adam (Adaptive moment estimation)

: RMSProp와 Momentum의 장점을 결합한 알고리즘

기본적으로 최적화 이론(optimization하면 Adam을 사용할 정도로 가장 최신의 기술이자 많이 사용되는 기술입니다. )