카테고리 338 [Optimization] Local Optima in Neural Network Solution Space 예전에는 solution space가 복잡하고 local optima가 많을 것이라고 생각하였다. 그러나 요즘에는 실제 solution space는 그렇게 복잡하지 않고 local optima가 많지 않다는 생각이 주를 이른다. (empirical) 오히려 plateaus 구간이 많다고 한다. Problem of Plateaus Plateaus는 평평한 구간으로 인해 gradient가 0에 가까운 경우(혹은 0)를 말한다. 이 구간에 접어들면 update가 오래걸리게 되어 learning이 느려진다. 이를 해결하기 위해서 좋은 optimization을 사용하는 것이 좋다. 2022. 4. 21. [Optimization] Learning Rate Decay Learning Rate Decay Learning Rate Learning rate는 gradient의 update step을 결정한다. 학습 정도에 따라서 learning rate를 변화시키는 것이 좋다. 학습 초기에는 큰 값을 가짐으로써 여기저기 돌아다니게 하고 학습을 어느정도 한 후에는 작은 값을 사용해서 정밀하게 보도록 한다. Learning Rate Decay Learning rate decay는 학습 정도에 따라 learning rate를 감소시킨다. 여러가지 방법이 존재한다. 2022. 4. 21. [Optimization] Adam Adam 현재 가장 널리 사용되는 optimization 기법이다. 특징 Gradient descent with momentum과 RMSProp이 결합된 형태이다. gradient descent with momentum gradient 자체에 smoothing을 걸어줌(exponentially weighted average) RMSProp gradient에 smoothing을 걸고 그것으로 gradient를 나눠줌 gradient가 커지지 않도록 함 어떤 상황에서도 gradient가 커지지 않도록 해서 전반적으로 유사한 gradient를 가지게 한다. 방법 $\beta_1$ : momentum에 대한 것 $\beta_2$ : RMSProp에 대한 것 (momentum + RMSProp) → bias co.. 2022. 4. 21. [Optimization] RMSProp RMSProp = Root Mean Square Propagation Gradient에 smoothing을 하고 동시에 보폭을 조절하여 속도를 높인다. Gradient descent에 비해 거의 항상 속도와 정확도가 좋다. vs. Gradient Descent with Momentum Gradient descent with momentum과 마찬가지로 smoothing을 한다. 그러나 gradient descent with momentum와 달리 속도도 높인다. 방법 dW와 db에 대한 제곱에 대해 exponentially weight를 건다. 이를 dW와 db에 나눠서 W와 b를 update 시켜준다. 이전의 값이 컸다면 S의 값도 커져서 보폭을 줄여주고, 반대로 이전의 값이 작았으면 S의 값도 작아져.. 2022. 4. 21. [Optimization] Gradient Descent with Momentum Gradient Descent with Momentum 보통 gradient descent보다 속도가 더 빠르다. 문제 Gradient descent는 최적의 길을 바로가지 못하고 zig-zag로 돌아가게 된다. 해결 Gradient descent with momentum은 gradient에 smoothing을 건다. Initial Gradient Problem initial gradient 문제가 발생할 수 있다. 그러나 bias correction을 할 필요 없다. 주로 training iteration 수 (epoch)는 주로 크게 잡아서 초기값이 큰 영향을 주지 않기 때문이다. 2022. 4. 21. 이전 1 ··· 19 20 21 22 23 24 25 ··· 68 다음