반응형 분류 전체보기154 weight를 갱신할 때 기울기에 왜 Learning rate를 곱할까? Optimizer를 공부하면서 Learning rate에 대해 의문이 들었다. Gradient자체가 얼마나 Loss에 영향을 주는지를 의미하니까 어느 방향으로 내려가야하는지 뿐만아니라 어느 정도로 업데이트 해야할지에 대한 정보도 담고있다고 생각했는데 왜 또 보폭을 설정해주는 지 궁금했다. 다시 생각해봐야할 것은 gradient라는게 weight 한 단위가 변할 때 loss에 대한 영향력을 나타낼 뿐, 그것이 극값의 위치에 도달할 수 있는 크기를 의미하지 않는다는 것이다. 아래 예시를 보자. weight를 기울기만큼 이동하면 방향은 왼쪽으로 잘 가고 있지만 너무 많이 이동해서 계속 (1, 1)과 (-1, 1)로만 갱신되는 모습을 볼 수 있다. 즉, 기울기는 방향에 대한 정보는 잘 전달하지만 극값에 다가가기.. 2021. 8. 15. [Optimizer] SGD , Momentum , NAG , Adagrad , Adadelta , RMSprop , Adam Optimizer란 weight를 갱신하는 기법이다. 기본적으로는 gradient vector에 learning rate를 곱하여 갱신한다. Optimizer를 공부할 때 gradient자체가 loss에 미치는 영향력을 알려주는데 왜 learning rate을 또 곱해주는지에 대해 의문을 가졌었다. 혹시 weight를 갱신할 때 gradient에 learning rate이라는 것을 왜 곱하는지를 모른다면, optimizer를 공부하기 전에 아래 포스팅을 읽으면 도움이 될 것이다. https://amber-chaeeunk.tistory.com/75 weight를 갱신할 때 기울기에 왜 Learning rate를 곱할까? Optimizer를 공부하면서 Learning rate에 대해 의문이 들었다. Grad.. 2021. 8. 15. [부스트캠프 AI-Tech] 2주차 회고록 학습기록 [Optimizer] https://amber-chaeeunk.tistory.com/74 [Optimizaton] https://amber-chaeeunk.tistory.com/80 [CNN] [RNN, LSTM, GRU] [Transformer] [Generative Model] 일정 주로 고민했던 것 이번주에는 1) Optimizer에서 gradient vector에 learning rate을 곱해주는 이유와 2) Adaptive learning을 도입한 Adagrad와 3) k-fold cross validation에 대해서 많이 고민하였다. ■ 첫번째로 learning rate에 대해 고민한 이유는 'gradient vector자체가 loss값에 얼마나 영향을 미치는 지에 대한 정보이니 .. 2021. 8. 13. [경사하강법] 미분 , 경사하강법 , gradient vector , 확률적 경사하강법 ( SGD ) 이번 포스팅에서는 weight 업데이트에 사용되는 경사하강법에 대해 정리할 것이다. weight를 조정하는 방법을 설명하기 위해 가장 먼저 미분부터 살펴본다. 그 이유는 기울기를 알면 변수를 어느 방향으로 움직여야 함숫값이 증가하는지 감소하는지를 알 수 있기 때문이다. 그 후 변수가 벡터인 경우의 기울기를 나타내는 gradient vector를 다룰 것이다. 1. 미분(differentiation) 미분은 함수 f의 주어진 점 (x, f(x))에서의 접선의 기울기이다. ※ 파이썬에서 미분은 sym.diff함수를 사용하여 계산할 수 있다. import sympy as sym from sympy.abc import x sym.diff(sym.poly(x**2 + 2*x + 3), x) #poly(2*x + .. 2021. 8. 9. 이전 1 ··· 18 19 20 21 22 23 24 ··· 39 다음 728x90 반응형