과적합 (Overfitting)
쉽게 풀면
기출문제만 통째로 달달 외운 학생을 떠올려 보세요. 이 학생은 똑같은 기출문제가 나오면 만점을 받지만, 문제 유형이 조금만 바뀌어도 응용을 못 해 시험을 망칩니다. 진짜 개념을 이해한 게 아니라 문제와 정답을 그대로 암기했기 때문입니다. 머신러닝 모델도 마찬가지로, 학습 데이터의 세세한 특징과 우연한 잡음까지 지나치게 정확히 외워버리면 정작 처음 보는 새로운 데이터에서는 형편없는 예측을 하게 됩니다. 이렇게 학습 데이터에만 과도하게 맞춰진 상태를 과적합이라고 합니다.
왜 중요한가
과적합은 모델이 실제 배포 환경에서 얼마나 신뢰할 수 있는지를 좌우하는 문제이기 때문에, 새로운 모델 구조나 학습 기법을 제안하는 거의 모든 머신러닝 논문에서 반드시 짚고 넘어가는 핵심 검증 항목입니다. 특히 딥러닝처럼 파라미터 수가 매우 많은 모델일수록 과적합 위험이 커지므로, 정규화·드롭아웃·조기종료 같은 기법의 효과를 입증할 때 과적합 여부가 핵심 비교 기준이 됩니다. 또한 의료·금융처럼 오판의 비용이 큰 응용 분야에서는 과적합된 모델이 실제 서비스에서 심각한 오류를 낼 수 있어 더욱 엄격하게 검증됩니다.
논문에서는 이렇게 쓰입니다
학습에 쓴 데이터에서는 거의 완벽하게 맞혔지만, 처음 보는 데이터에서는 성능이 크게 나빠졌다는 뜻입니다.
의료 영상 분야처럼 데이터 수가 적은 환경에서 과적합이 특히 잘 발생하며, 이를 완화하기 위한 기법을 함께 적용한 결과를 보고하는 문장입니다.
자연어처리 분야에서 미세조정 과정 중 과적합이 학습 곡선의 형태로 드러나는 전형적인 양상을 설명하는 문장입니다.
조금 더 깊게 보면
과적합은 흔히 학습 곡선(learning curve)에서 학습 손실은 계속 줄어드는데 검증 손실은 어느 시점부터 다시 늘어나는 모양으로 나타나며, 이 지점을 기준으로 학습을 멈추는 조기종료(early stopping)가 실무에서 자주 쓰입니다. 반대 현상으로 모델이 너무 단순해 학습 데이터의 패턴조차 제대로 못 잡는 과소적합(underfitting)이 있으며, 두 현상 사이에서 적절한 모델 복잡도를 찾는 문제를 편향-분산 트레이드오프(bias-variance tradeoff)라 부릅니다. 이 밖에도 L1·L2 정규화처럼 모델이 학습 데이터의 잡음까지 외우지 못하도록 파라미터 크기에 제약을 거는 기법들도 과적합 논의에서 함께 등장합니다.
주의할 점
학습 데이터에서의 높은 정확도만 보고 모델 성능이 좋다고 판단해서는 안 되며, 반드시 학습에 쓰이지 않은 별도의 검증·테스트 데이터에서의 성능을 함께 확인해야 합니다. 과적합 여부를 확인하는 대표적인 방법 중 하나가 교차검증입니다.