본문 바로가기
소년의 IT 쉽게 이해하기/인공지능 쉽게 이해하기

과적합(Overfitting) 쉽게 이야기하기

by Circlezoo 2021. 12. 12.
머신러닝에서 학습 데이터를 과하게 학습하는 것을 뜻한다. 일반적으로 학습 데이터는 실제 데이터의 부분 집합이므로 학습 데이터에 대해서는 오차가 감소하지만 실제 데이터에 대해서는 오차가 증가하게 된다.
출처: 위키백과

 

Q. 학습 데이터를 많이 공부하면 좋은 게 아닌가요? 왜 문제가 되죠?

 

 데이터를 많이 하긴 했는 데 너무 적은 수의 학습을 한 것입니다. 

강아지를 공부하고 있는 데 너무 흰색 비숑에 대해서만 공부를 하다 보니 비숑이 염색을 조금이라도 하면 비숑이 아니라고 생각하는 것입니다. 그동안 너무 흰색 비숑만 봐왔기 때문이죠.

 

Q. 그럼 과적합은 항상 발생하나요?

 

 과적합은 데이터가 적을수록 많이 발생합니다. 복잡할 경우도 발생한다고 하는 경우도 있는 데 만약에 데이터가 많을 경우 복잡하더라도 발생하지 않는다고 합니다.

학습한 데이터에 관해서만 알고 있기 때문에 다른 데이터가 들어오면 헷갈리게 되는 것이죠. 많은 데이터가 있으면 발생하지 않는다는 것은 거의 대부분의 경우에 대해서 컴퓨터가 학습을 하게 된다면 컴퓨터가 학습한 내용이 아닌 데이터는 볼 일이 없고 그렇다면 과적합이 발생할 일이 없게 되는 것입니다.

 

Q. 그럼 과적합만 있는 것일까요?

 

과소 적합, 적정 적합, 과잉 적합이 있습니다. 아무래도 과적합에 오류가 더 많이 발생하기 때문에 과적합에 많이 신경을 쓰는 것으로 생각됩니다. 아무래도 테스트 자료로 100%의 정확도를 만들고자 노력할 것이고, 100%가 나온다면 출시 단계로 넘어갈 테니 말이죠.

이미지 출처: 이미지 우측 하단 및 하단 링크 참조 

 

Q. 어떻게 방지할 수 있을까요?

 

 어떻게 방지하면 좋을까요? 전체 경우의 수를 다 포함할 정도의 많은 데이터가 있으면 좋겠지만 현실은 그렇지 못하니 과적합을 방지하는 방법이 있습니다. 

해당 방법은 참고 2번째 링크를 참고해주시면 도움이 될 것입니다.

 

참고:https://rfriend.tistory.com/187

 

[R 기계학습] 과적합(Over-fitting) 이란 무엇인가?

지난번 포스팅에서는 기계학습(machine learning)의 정의와 3가지 유형 (supervised learning, unsupervised learning, reinforcement learning)에 대해서 알아보았습니다. 이번 포스팅에서는 학습의 일반화(gener..

rfriend.tistory.com

https://umbum.dev/222

 

인공신경망 ( ANN ) #6-3 최적화 : 오버피팅 방지( weight decay, droupout ) / 하이퍼파라미터 최적화

오버피팅( Overfitting ) 오버피팅은 훈련 데이터에만 지나치게 적응하여 시험 데이터에 제대로 반응하지 못하는 현상을 말한다. 주로 다음 경우에 발생한다. 매개변수가 많고 표현력이 높은 모델

umbum.dev

 

반응형

댓글