과적합(overfitting)은 격차로 드러납니다. 예를 들어 신용 모델이 학습에 쓴 대출 건에서는 거의 완벽한 정확도를 보이지만, 처음 보는 대출 건에서는 정확도가 눈에 띄게 낮아집니다. 특정 지점의 관행이나 이례적인 몇 달간의 흐름처럼 학습 레코드의 세부 사항을 모델이 외워 버렸고, 이런 세부 사항은 새 신청자에게 그대로 적용되지 않습니다.
이 격차를 측정하려면 학습에서 제외해 둔 레코드가 필요합니다. CUBIG의 UCI Polish Companies Bankruptcy 실험(2026년 10월)에서는 기준 분할로 학습 레코드 7,768건과 별도로 평가 레코드 1,942건을 떼어 두었고, 모든 전후 비교를 같은 1,942건으로 채점했습니다.
흔한 원인은 다음과 같습니다.
- 수천 행 데이터로 학습한 매우 깊은 트리처럼, 데이터가 감당할 수 있는 수준보다 용량이 큰 모델
- 중요한 사례의 예시가 너무 적어서 모델이 소수 레코드만 보고 그 사례를 학습하는 경우
- 레이블 노이즈에서 설명하듯, 잘못된 레이블을 모델이 패턴인 것처럼 학습하는 경우
- 같은 검증 데이터로 튜닝을 반복하다가 선택 사항이 그 데이터에 맞춰지는 경우
학습 데이터의 점수와 처음 보는 데이터의 점수 사이에 생기는 격차가 일반적인 신호입니다. 어느 정도의 격차가 문제인지는 업무와, 처음 보는 데이터를 어떻게 골랐는지에 따라 달라집니다.
과적합은 데이터 누수와 어떻게 다른가요?
- 과적합은 모델이 학습 데이터를 지나치게 세밀하게 학습했다는 뜻입니다. 학습 점수는 높고 처음 보는 데이터의 점수는 더 낮습니다.
- 데이터 누수(data leakage)는 모델이 알아서는 안 되는 정보가 주로 특성이나 준비 단계를 거쳐 모델에 들어갔다는 뜻입니다. 테스트가 더 이상 공정한 측정이 아니므로 학습 점수와 테스트 점수가 모두 높게 보일 수 있습니다.
- 과적합은 더 단순한 모델, 정규화, 더 다양한 데이터, 레이블 수정으로 해결합니다. 누수는 특성, 데이터 분할, 준비 단계의 순서를 바로잡아 해결합니다.
AI 업무에서 과적합은 어디서 문제가 되나요?
한 팀이 드문 사례의 레코드를 학습 세트에 추가한 뒤, 몇 주 동안 같은 검증 세트로 모델을 튜닝합니다. 검증 점수는 계속 오릅니다. 그런데 새 홀드아웃 세트에서는 향상 폭이 훨씬 작습니다. 향상분의 일부는 그 사례를 학습해서가 아니라 검증 레코드에 맞춘 결과였기 때문입니다.
과적합을 잡아내려면 모델과 튜닝 과정이 한 번도 건드리지 않은 데이터가 필요합니다. 개발 중에는 홀드아웃 세트나 교차 검증을 쓰고, 최종 비교에는 고정된 평가 세트를 씁니다. Syntitan의 Ready for Model은 같은 평가 조건에서 데이터 준비 전후의 결과를 비교합니다. 따라서 준비로 얻은 향상은 새로 뽑은 테스트가 아니라 고정된 평가 레코드에서 측정됩니다.