본문 바로가기
Deep Learning Basic

4. 바른 학습을 위해

by Keep It Simple, Stupid! 2018. 11. 18.


바른 학습을 위해


기계학습에서 OverFitting이 문제가 되는 일이 많다. 오버피팅이란? 신경망이 훈련 데이터에만 지나치게 적응되어 그 외의 데이터에는 제대로 대응하지 못하는 상태를 말한다. 기계학습은 범용 성능을 지향한다.훈련 데이터에는 포함되지 않는, 아직 보지 못한 데이터가 주어져도 바르게 식별해내는 모델이 바람직하다. 복잡하고 표현력이 높은 모델을 만들 수는 있지만, 그만큼 오버피팅을 억제하는 기술이 중요해지는 것이다. 

Overfitting(오버피팅)

오버피팅이 발생하는 경우

● 매개변수가 많고 표현력이 높은 모델

● 훈련 데이터가 적음

이번 절에서는 이 두 요건을 일부러 충족하여 오버피팅을 일으켜보자. 그러기 위해 본래 60,000개인 MNIST 데이터셋의 훈련 데이터 중 300개만 사용하고, 7층의 네트워크를 사용해 네트워크의 복잡성을 높이겠다. 각 층의 뉴런은 100개, 활성화 함수는 ReLU를 사용!


가중치 감소(Weight Decay)

오버피팅 억제용으로 예로부터 많이 이용해온 방법

이는 학습 과정에서 큰 가중치에 대해서는 그에 상응하는 큰 페널티를 부과하여 오버피팅을 억제하는 방법, 원래 오버피팅은 가중치 매개변수의 값이 커서 발생하는 경우가 많이 때문이다.

신경망 학습의 목적은 손실 함수의 값을 줄이는 것이다.

'Deep Learning Basic' 카테고리의 다른 글

2. 가중치 초깃값  (0) 2018.11.17

댓글