출처: 모두를 위한 딥러닝 강좌 시즌 1 by Sung Kim
위 그림과 같이, 모델이 주어진 학습 데이터를 예측하는 데에 너무 맞춤화된 경우, 이를 과적합(overfitting) 되었다고 이야기한다.
그렇다면 현재 모델이 과적합되어 있는지를 어떻게 알 수 있을까?
과적합이 일어날 경우, 학습 layer가 더 깊어질수록 훈련 데이터는 잘 예측하지만, 테스트 데이터는 잘 예측하지 못하게 된다.
그럼 과적합을 막기 위한 방법에는 무엇이 있을까?
우선 이전에 다루었던 일반화(Regularization)이 있을 것이다.
신경망 모델에서는 일반화 외에도 dropout이라는 다른 방법이 하나 더 있다.
dropout이란, 위 그림과 같이 학습 단계에서 무작위로 신경망의 일부 뉴런들을 제외하는 것을 의미한다.
다만, 테스트 단계에서는 예측할 때 모든 뉴런들을 포함시켜 작동한다는 점에 주의해야 한다.
실제로 이러한 dropout 기법은 잘 작동한다고 한다.
과적합을 방지하기 위한 또 다른 방법으로 앙상블 기법이 있다.
앙상블 기법은 여러 개의 모델을 학습시킨 뒤 그 모델들을 합치는 기법이다.
학습 데이터는 같은 것을 학습시킬 수도 있고, 다른 것을 학습시킬 수도 있다.
실제로 앙상블 기법을 사용하면 모델의 성능을 2%에서 많게는 5%까지도 향상시킬 수 있다고 한다.
신경망은 모델을 만드는 사람에 따라서 마치 레고처럼 다양한 형태로 구성할 수 있다.
다음 포스트에서는 신경망의 다양한 예시에 관한 챕터인 ML lec 10-4 를 생략하고 ML lec 11-1의 내용을 다루도록 하겠다.