학습 관련 기술들

Sinaenjuni·2023년 6월 9일

Deep learning

목록 보기
1/2

과적합, 오버피팅(Overfitting)

머신러닝 알고리즘이 훈련 데이터에 지나치게 학습되어 새로운 데이터에 제대로 대응하지 못하는 상태를 의미한다. 기계학습은 학습 데이터 외에도 새로운 데이터에 대해서도 학습 데이터 만큼의 범용적인 성능을 보여주어야 한다. 하지만 오버피팅된 모델의 경우 학습된 데이터에 지나치게 학습되어 새로운 데이터를 잘 예측하지 못한다. 이는 모델이 복잡해 질수록 과적합 문제는 심화된다.

매개변수가 많은 모델
훈련 데이터가 적은 경우

가중치 감소(Weight decay)

과적합을 완화하기 위한 방법으로 가중치 감소라는 방법이 있다. 과적합의 경우 가중치가 크게 작용하여 발생하는 경우가 많다. 가중치 감소는 가중치의 제곱 노름(Norm)을 손실 함수에 더하여 가중치가 필요이상 높아지는 것을 방지한다.

L=L+12λW2L = L +\frac{1}{2}\lambda W^2

위 식과 같은 형태로 손실 함수 L에 가중치의 제곱 노름을 더한다. 이때 λ\lambda의 경우 정규화의 강도를 조절하는 하이퍼파라미터이다. 클수록 큰 가중치에 더 많은 페널티가 적용된다. 또한 12\frac{1}{2}12λW2\frac{1}{2}\lambda W^2의 미분 결과인 λW2\lambda W^2를 조정하는 상수이다.

드롭아웃(Dropout)

신경망의 구조가 복잡해지면 가중치 감소를 통해 과적합을 억제하는 것이 어려워진다. 드롭아웃의 경우 신경망의 노드 혹은 두 노드를 연결하는 간선을 무작위로 제거하는 방법을 통해 과적합을 억제한다. 다만 드롭아웃은 학습 과정에서만 적용되고 예측 과정에서는 사용된지 않는다. 마치 달리기 선수가 발목에 무거운 추를 달고 연습을 하는것과 유사하다. 또한 이는 기계학습 방법 중 여러 모델은 따로 학습시킨 후 예측 과정에서 합치는 앙상블 학습 방법과 유사하다.

하이퍼파라미터 최적화

하이퍼파라미터 최적화는 모델 학습을 위해 사전에 주어지는 변수들로 학습 성능에 많은 영향을 미친다. 특히 그리드 서치와 같은 규칙적인 탐색 방법보다는 무작위로 선택하는 방법이 일반적으로 좋은 결과를 보여준다고 알려져 있다. 최적화를 위한 하이퍼파라미터들의 범위를 0.001에서 1000 사이의 로그 스케일(10의 거듭제곱) 형태로 지정한다. 그 다음 지정된 하이퍼파라미터를 통해 작은 에폭으로 학습하고 평가 데이터로 하이퍼파라미터를 검증한다. 위 단계를 특정 횟수 반복한 후 하이퍼파라미터의 범위를 더 줄인다.

0개의 댓글