Learning Decay (학습률 감쇠) 학습 알고리즘의 속도를 높이는 한가지 방법은 시간에 따라 학습률을 천천히 하는 것이다. 이를 Learning Decay (학습률 감쇠) 라고 부른다. 왜 학습률이 감쇠해야함? 배치를 잘게 자른 미니배치 경사하강법을 사용한다고 생각해보자. 고정된 α (learning_rate) 를 사용할 경우 최솟값에 정확하게 수렴하지 않고 주변을 돌아다니게 된다. α를 줄임으로써 학습 초기 단계에서는 훨씬 큰 스텝으로 진행하다가 학습이 수렴할수록 작은 스텝으로 진행하게 할 수 있다. 이 경우 단계마다 진행 정도가 작아지면서 주변을 돌아다니는 대신에 최솟값 주변에서 밀집하여 진동할 것이다. 구현 1 epoch 는 배치 한번을 통과하는 단위다. α0 는 초기학습률이다. Learni..
Adam (Adaptive Moment Estimation) Momentum 과 RMSProp 을 합친 알고리즘인 Adam 어떻게 작동하는지? # 지수 가중 평균법 : Vt = β*Vt-1 + (1-β)*Θt # Vdw = 0, Sdw = 0, Vdb = 0, Sdb = 0 로 초기화 # 모멘텀을 구현해준다. (RMSProp과 구분하기위해 β1으로 표기) Vdw = β1*Sdw + (1-β1)*dw Vdb = β1*Sdb + (1-β1)*db # RMSProp을 구현해준다. (모멘텀과 구분하기위해 β2으로 표기) Sdw = β2*Sdw + (1-β2)*dw² Sdb = β2*Sdb + (1-β2)*db² # 각각 편향보정을 해준다. V^corrected dw = Vdw / (1-β^t) V^correct..
RMSProp(Root Mean Square Prop) 모멘텀을 이용해서 경사하강법을 빠르게 할 수 있었다. 그리고 경사하강법을 빠르게 할 수 있는 알고리즘이 또 있다. 바로 RMSProp이다. 이것은 도함수의 제곱을 지수가중평균하는 것이다. ✋ 잠깐 여기서 다시 기억해보자. 경사하강법에서 빨리 최솟값에 도달하려면 진동하고있는 수직의 학습률은 느리게 최솟값을 향해 나아가야하는 수평방향의 학습률은 빠르게 해야한다. 어떻게 작동하는지? # 지수 가중 평균법 : Vt = β*Vt-1 + (1-β)*Θt Sdw = β*Sdw + (1-β)*dw² Sdb = β*Sdb + (1-β)*db²그리고 가중치를 이렇게 업데이트해준다. α = learning_rate w = w - α * dw/√Sdw b = b - α ..