EunGyeongKim

[ML] 단어 정리 본문

ML & DL/딥러닝

[ML] 단어 정리

EunGyeongKim 2024. 2. 15. 13:37

learning rate, momentum coefficient

  • learning rate와 momentum coefficient는 역전파 알고리즘을 신경망으로 훈련시키는 굉장히 중요한 변수이다.
  • earning rate는 계산된 경사하강법 기준으로 새로운 factors의 weight의 속도를 조절하는 양의 상수이다.
  • momentum coefficient는 가중치가 조정되는 속도를 가속화 되는 가중치에 추가되는 추가가중치이다. momentum coefficient는 최소화 루틴을 minimum에서 벗어나는데 도움을 준다.

 

local minima

  • local minima문제는 에러를 최소화 시키는 최적의 파라미터를 찾는 문제에 있어서 파라미터 공간에 수많은 지역적인 홀(local minimum)에 빠지는 문제. → 전역적인 해(global minimum)을 찾지 못함.

 

Simulated annealing

  • process of slowly decreasing the probability of accepting worse solutions as the solution space is explored
  • Simulated annealing is a technique that is used to find the best solution for either a global minimum or maximum, without having to check every single possible solution that exists.

 

인공신경망을 잘 훈련시키려면 신경망을 loss surface의 flat minima로 보내야 한다. flat minima에 도달하면 data의 분포나 weight 값에 변화가 생겨도 loss가 크게 변하지 않기 때문에 신경망의 일반화 능력과 관련해서 중요하다.

최근 인공신경망은 parameter의 개수가 많기 때문에 train data를 일정 epoch 이상 돌리면 학습을 금방 끝낸다. 즉, training loss가 매우 작아진다. 그런데, 빠르게 훈련되면 flat minima에 도달하지 못하는 경향이 있다. 이를 overfitting 되었다고 한다.

이런 일이 발생하는 원인은 인공신경망이 만드는 loss surface가 non-convex이기 때문이다. non-convex는 극솟값 지점이 매우 많다. 따라서, sharp minima(적당한 극솟값)에 도달해 훈련을 끝내기 때문에 최솟값 지점에 도달하지 못한다. 이렇게 훈련을 끝내면 training loss는 작을지라도 전체적으로 data의 통계적 변화에 취약해 일반화 능력이 떨어진다.

sharp minima를 피하기 위한 대표적인 train방법이 SGD(stochastic gradient descent)이다. GD(gradient descent)와 비교할 때 SGD는 크지 않은 mini-batch size(보통 32~512정도)로 loss를 계산하고 weight를 업데이트 하는데, 이때 mini-batch에 들어오는 데이터에 따라 일종의 noise가 생기고 이것이 SGD를 sharp minima에 빠지지 않게 한다.

 

L2 weight regularization도 sharp minima를 피할 수 있는 방법이다. weight 값의 크기에 제약을 두어 해결한다. 그리고 dropout도 regularization이다.

 

regularization 방법은 크게 두 가지 특징을 갖는다. 첫 번째로, uncertainty이다. GD의 경우 batch size가 매우 커서 noise가 적고, SGD는 batch size가 제한되어 있기 때문에 상대적으로 noise가 크다. noise가 크면 잘못된 방향으로 파라미터를 update할 수도 있지만 sharp minima를 피하는데 도움을 준다. 두 번째로, constraint이다. L2 norm을 작게 하거나 weight나 gradient 값에 noise를 넣는 것이다. regularization을 가하면 training accuracy 100%를 찍기가 매우 어렵다. training loss가 천천히 줄어들기 때문이다.

 

 

Comments