ML&DL

Generalization and Overfitting(No.1)

지혜의 시작 2020. 12. 18. 23:02
728x90

딥러닝에서의 'Generalization and Overfitting'에 관한 내용입니다.!

 

<들어가기 전>

 

- 학습을 시키는 이유

 

1. data를 잘 기억하기 위해

2. unknown data에 대한 예측을 위해

 

- 많은 양의 학습데이터 사용은 현실적으로 힘들다.

 

- unknown data를 잘 예측하기 위해서는 이미 주어진 training data의 패턴을 잘 학습해서 일반화된 모델을 만드는 Generalization을 잘해야 한다.

 

<Example Error Back Propagation>

- iteration : 반복횟수

- iteration이 1751부터 3501사이에서 Error값이 급격히 감소한다.

- 7000번 정도에서 학습을 멈추는 것이 좋다.

- 10000번까지 가면 noise가 포함된 데이터들까지 학습시키게 되므로 예측값도 이상해질 수 있다. 즉, overfitting 현상이 일어난다. 

 

<Generalization and Overfitting>

 

왼쪽에서부터 '일반화가 잘된 모델', 'overfitting된 모델', '주어진 데이터에 대해서만 학습이 잘된 모델'이다. 

- if) 10만 pixel(10만 차원 or 축)의 데이터가 있고 image data가 100만개 있다면 한 축에 10개씩 image data가 들어간다. --> 100만개 data가 그렇게 큰 데이터가 아닐수도 있다!

- '주어진 데이터에 대해서만 학습이 잘된 모델'은 많은 양의 학습 데이터를 사용하면 해결 가능하다.

- ①,②,③은 good인 방법이다! ④는 현실적으로 힘드므로 현명한 방법은 아니다.!

- ①에서 "적당한" 이라는 워딩은 data의 문제에 따라 노드수를 적당하게 적용해야 한다는 것이다. 즉, 많이 문제를 접해보면서 노하우를 쌓아야 한다. 그렇지만 어느정도 일관된 기준은 있다.!!

- ①의 방법은 학습데이터의 특징을 잘 추출하기 위한 방법이다.

728x90

'ML&DL' 카테고리의 다른 글

Generalization and Overfitting(No.2)  (0) 2020.12.19
AI를 위한 기초수학!  (0) 2020.12.18
딥러닝 입문하시는 분들 강의 추천!  (0) 2020.12.05