-
Addressing overfitting (과적합 문제 해결) | Supervised Machine Learning: Regression and ClassificationMachine Learning/Stanford ML Specialization 2023. 11. 6. 23:25
과적합 문제를 그렇다면 어떻게 해결할 수 있을까? 해결 방법에는 여러가지가 있다.
Collect More Training Examples
첫번째, 충분한 예제가 있다면 고차 다항식도 과적합 문제를 일으키지 않는다.
https://youtu.be/1kgcON0Eauc 데이터가 너무 없다면, 그 사이 공백의 데이터에 맞는 굴곡이 많은 함수가 그려질 수 있다. 만약, training example을 충분히 모아서 고차 다항식으로 트레이닝 한다면, 그 공백들을 메꿔주면서 많은 example을 만족시키고, 또한 미래의 예측을 대비해 적절하게 generalized된 모델을 찾아낼 수 있따.
Select Features to Include/Exclude
또다른 방법은 Feature를 조금더 더하거나, 제외시키는 방법이다. 너무 많은 feature를 갖고있는 몇개 안되는 데이터를 가지고 트레이닝 하게 되면, 이 역시 Overfitting한 상황이 되게 된다. 그렇기 때문에, 정말 관련된 Feature만 선택해서 모델을 트레이닝 하는것도 도움이 된다. 만약, 집값을 계산하는데 100개의 Feature가 있고, 데이터는 20개밖에 없다면? Feature의 갯수를 제일 중요하다고 생각되는것들로 추려보는게 좋다.
Regularization (정규화)
또다른 방법은 Regularization이다. w, 즉 parameter들의 사이즈를 대폭적으로 줄여서 overfit하는 곡선들의 굴곡을 조금 smooth하게 만들어 주면, 다른 추후 값들도 얼추 들어맞는 곡선의 형태가 된다.
https://youtu.be/1kgcON0Eauc Summary
Overfitting을 해결하는 방법, 정리하자면 다음과 같다.
- 데이터를 더 모은다.
- Feature를 잘 선택한다.
- Regularization을 한다. (Parameter의 사이즈를 줄인다)
Reference
'Machine Learning > Stanford ML Specialization' 카테고리의 다른 글