머신러닝&딥러닝/모두를 위한 딥러닝

[머신러닝 이론] Learning rate(학습률)

Chaerry._o 2024. 1. 15. 10:32
반응형

이 글은 모두를 위한 딥러닝 시즌1을 기반으로 작성한 글입니다.

 

 

[딥러닝 이론] Softmax Regression(소프트맥스 회귀)

이 글은 모두를 위한 딥러닝 시즌1을 기반으로 작성한 글입니다. [머신러닝 이론] Logistic Regression(로지스틱 회귀) 이 글은 모두를 위한 딥러닝 시즌1을 기반으로 작성한 글입니다. [머신러닝 이론]

chaerrylog.tistory.com

이전 글에서는 다중 분류를 위한 소프트맥스 회귀에 대해서 설명했다.

이번 글에서는 실제 머신러닝을 실행할 때 필요한 개념 중 하나인 학습률에 대해서 설명하겠다.


Learning rate

https://medium.com/@colemccracken/deep-neural-networks-choosing-a-learning-rate-172b97ef459

 

앞서 Gradient descent(경사하강법)에 대해서 설명한 적이 있다. 이는 Loss function이 최소가 되는 Weight를 찾는 방법이다.

$$ x_{i+1} =  x_{i}-\alpha \frac{df( x_{i})}{dx} $$

 

위에 수식에서 α가 학습률을 나타낸다. 이는 이동거리를 조정해주는 매개변수로써 step size라고도 한다.

 

https://www.deeplearningwizard.com/deep_learning/boosting_models_pytorch/lr_scheduling/

 

이 때 leaning rate가 작으면 학습하는 시간이 오래 걸리고, loss의 최소값까지 도달하지 못하고 멈출 수 있다.

반대로 leaning rate가 크면 Overshootting(= Overflow)이 발생하여 loss값을 줄일 수 없기 때문에 학습이 되지 않는다.

 

처음에 leaning rate를 0.01로 학습을 시켜본 뒤, loss 값이 발산되는지 차이가 별로 없는지를 확인한 후 조정한다.

반응형