검증 점수가 환상적으로 좋은데 실제 운영에서는 처참하게 무너진다. 거의 모든 경우 범인은 하나 — **데이터 누수(data leakage)**다. 누수는 모델이 학습 시점에 실제로는 알 수 없는 정보에 접근해, 평가 점수를 비현실적으로 부풀리는 현상이다.
MLS-C01 시험은 누수를 집요하게 묻는다. "왜 검증은 99%인데 프로덕션은 60%인가?" 같은 시나리오의 정답은 거의 항상 누수다. 오늘은 누수의 원인·탐지·방지, 그리고 가장 흔한 두 유형인 타깃 누수와 시계열 누수를 다룬다.
누수는 "모델이 예측 시점에 가질 수 없는 정보가 학습에 새어 들어가는 것"이다. 크게 두 갈래다.
| 유형 | 정의 | 결과 |
|---|---|---|
| 타깃 누수(target leakage) | 예측 대상의 정보가 특성에 직접/간접 포함 | 학습·검증 모두 비현실적으로 높음 |
| train-test 오염(train-test contamination) | 전처리·분할 과정에서 테스트 정보가 학습으로 유입 | 검증은 높지만 프로덕션은 낮음 |
핵심 질문은 항상 같다: "이 특성을 예측하는 그 순간에, 정말로 알 수 있는 값인가?" 아니라면 누수다.
💡 관련 이론: 누수의 본질은 시험 부정행위와 같다. 모델이 정답지를 미리 본 것이다