Early Stopping이란?

overfitting이 되기전에 학습을 멈추는 것으로, 수치 최적화(numerical optimization)에 따른 정형화입니다.

  • 큰 모델을 학습할 때, train error 는 학습이 진행되면서 점점 내려가지만, validation error 는 감소하다가 어느 순간부터 다시 증가하는데 이 때 멈춘다면 최적의 결과를 얻을수 있을 것이라는 아이디어 비롯되었습니다.
  • L2 regularization(weight decay)와 같은 효과가 있습니다.
    • 차이점 :  early stopping은 모델을 한번만 학습하면 되는 반면, L2를 위한 weight decay는 적절한 하이퍼파라미터값을 찾기 위해 여러번 학습을 해야함.

 

L2 regularization과 early stopping의 관련성?

출처 : https://velog.io/@cha-suyeon/DL-%EC%A1%B0%EA%B8%B0-%EC%A2%85%EB%A3%8Cearly-stopping

[ L2 regularization ]

L2를 수식으로 표현하면 다음과 같으며, 미분하면 오른쪽과 같은 수식으로 표현됩니다.

학습에 의해 최적화하는 값 weight, w*에 대해 최적화하는 목적함수(J^)가 있다고 했을 떄, 만약 weight 파라미터들이 모두 선형이고, 이를 Taylor 근사함수를 통해 2차식까지 근사하고, 여기에 L2 regularization을 붙여주면 아래와 같은 수식이 도출됩니다.

우리는 이 식의 미분값 ∇w(J^)(w)가 0이 되는 때를 구합니다.

w~을 Eigenvalue decomposition에 의해 정리하면 오른쪽 수식이 됩니다. w는 w*에 비례해 scaling되는데, αI에 의해 decay되는 효과가 있습니다. 즉, H의 i번째 eigenvector를 λ(i)라하면 λ(i)/(λ(i)+α)로 스케일링됩니다. (α가 λ보다 클수록 더 큰 regularization 효과가 있습니다.)

[ Early stopping ] 

early stoppiing에서도 동일하게 학습에 의해 최적화하는 값 weight, w*에 대해 최적화하는 목적함수(J^)가 있다고 했을 떄, 만약 weight 파라미터들이 모두 선형이고, 이를 Taylor 근사함수를 통해 2차식까지 근사한 식을 구하고 이에 대해 미분을 해서 gradient, 변화도를 구하면 아래와 같습니다.

즉, 모델업데이트 식은 아래와 같으며, Eigenvalue decomposition에 의해 정리하면 오른쪽 수식이 됩니다

w의 초기값이 0이고 learning rate(η)가 잘 골라져서 |I-ηΛ|<1을 만족하면 아래와 같은 식이 도출됩니다.

[ 결론 ]

L2에서 w~을 Eigenvalue decomposition에 의해 정리해 구한 식에 early stopping에서와 같이 양변에 Q^T를 곱해주고 두 식을 비교해봅니다.

두 식에서 하이퍼파라미터인 η, t, α를 잘조절하여, 파란색으로 표시한 두 식이 같아지면 L2와 Early Stopping은 매칭되게 됩니다. 이러한 과정을 통해 'Early stopping은 L2와 같은 효과를 가진다'라는 것이 증명될 수 있겠습니다.

그래서, early stopping을 적용하는 경우, L2 규제는 잘 사용하지 않는다고 합니다.

'AI > Deep Learning' 카테고리의 다른 글

Adversarial Training (적대적 학습)  (0) 2022.11.15
Multi Task Learning (다중 작업 학습)  (0) 2022.11.11
Dropout (드롭아웃)  (0) 2022.11.11
Data Augmentation (데이터 증식)  (0) 2022.11.07
Regularization (규제화)  (0) 2022.11.07

+ Recent posts