※ 이 글은 chatGPT를 기반으로 작성한 글입니다.
① 과적합(overfitting)은 기계 학습(machine learning) 모델이 훈련 데이터에서는 잘 수행되지만 학습되지 않은 새로운 데이터에서는 잘 수행되지 않을 때 발생하는 현상이다.
㉠ 과적합으로 잘 알려진 예시가 강아지 사진을 학습 시켰는데 모델이 과적합되어서 머핀과 강아지를 구분하지 못하는 사례가 있다.(출처 : @teenybiscuit)
㉡ 모델이 패턴을 학습하고 그 결과로 새로운 데이터를 일반화시킨 것이 아니라 그저 훈련 데이터를 기억한 셈이다.
② 과적합 현상이 발생하는 주 원인은 모델이 지나치게 복잡하게 설계되어 높은 복잡성을 지녔기 때문이다.
㉠ 모델이 너무 복잡하면 학습 데이터 내 노이즈에 결과를 맞추다보니 실제 패턴보다는 그것에 맞는 모델이 생성된다.
ⓐ 결과적으로 새로운 데이터에서 성능이 저하되는 현상인 오버피팅이 발생할 수 있다.
③ 모델이 훈련 데이터에 과적합되면, 새로운 데이터에서 성능이 저하되어 실제 응용 프로그램에서 사용할 수 없다.
㉠ 설계된 모델은 높은 분산을 갖게 되고, 그 결과 훈련 데이터의 질에 따라 모델의 성능이 크게 달라질 수 있다.
㉡ 과적합은 모델의 해석과 이해를 어렵게할 수 있다.
ⓐ 모델이 훈련 데이터를 단순히 기억만 했기 때문에 무슨 피쳐(feature)와 패턴이 사용되는지 분명하지 않다.
④ 과적합을 피하기 위한 몇 가지 방법이 있다.
㉠ 제일 일반적인 방법은 정규화(regularization)를 사용하는 것이다.
ⓐ 정규화는 모델의 손실함수(loss function)에 패널티를 추가하는 것으로 매개변수의 개수를 줄이는 것을 말한다.
ⓑ 정규화는 모델이 훈련 데이터의 노이즈에 과한 영향을 받는 것을 방지하는 데 도움이 된다.
㉡ 두 번째 방법은 유효성 검사 성능이 저하되기 시작할 때 모델을 조기 종료하는 것이다.
ⓐ 이 방법은 모델이 교육 데이터에 과적합되는 것을 방지할 수 있다.
㉢ 세 번째 방법은 훈련 데이터의 양을 늘리는 것이다.
ⓐ 데이터 세트가 클 수록 데이터의 노이즈 영향을 줄일 수 있기 때문에 과적합을 방지하는데 도움이 될 수 있다.
'All about Machine-Learning > 기본' 카테고리의 다른 글
순환 신경망(RNN, Recurrent Neural Netswork) (0) | 2024.01.06 |
---|---|
BERT(Bidirectional Encoder Representations from Transformers) (0) | 2023.12.21 |
손실 함수(Loss function) (0) | 2023.03.05 |
모델의 복잡도 (0) | 2023.03.05 |
전처리(Preprocessing) (0) | 2023.03.05 |