분포 이동 — 겨울로 공부하고 봄에 시험 치기
학습 데이터와 실전 데이터의 분포가 다를 때 생기는 일. 로컬 검증이 거짓말을 시작하는 지점.
한 줄 정의
분포 이동(Distribution Shift)은 모델이 학습한 데이터와 실제로 만나는 데이터의 통계적 성질이 달라지는 것이다. 시간이 흐르며 생기면 시간적 드리프트(temporal drift)라 부른다.
내 말로
겨울 기출문제로만 공부하고 봄 시험을 치는 것. 문제 유형(피처 분포)도 바뀌고 정답 비율(라벨 분포)도 바뀐다. 무서운 건 시험장에 들어가기 전까지는 바뀐 걸 모른다는 점 — 겨울 모의고사(로컬 검증) 점수는 계속 잘 나오기 때문이다.
어디서 만났나
AI Learn X 경연에서 로트번호를 날짜로 해독하니 학습 데이터는 겨울, 테스트는 봄이었다. 불량률은 달마다 떨어지고 기온 피처는 통째로 이동해 있었다. 그래서 랜덤 교차검증을 버리고 마지막 달을 떼어내는 시간 홀드아웃으로 바꿨는데, 그걸로도 부족했다 — 로컬 검증에서 가장 좋았던 모델이 실제 테스트에서 가장 나빴다. 겨울 안에서의 성능 순위와 겨울→봄 일반화 순위가 역상관이었던 것. 분포가 움직이는 문제에서는 검증 설계가 모델 선택보다 먼저고, 그 검증조차 의심 대상이다.
더 파볼 것
- 공변량 이동(피처가 변함) vs 사전확률 이동(라벨 비율이 변함) — 이번 경연은 둘 다였다
- 시간 기반 교차검증(rolling window)과 그 한계
- 탐색과 착취 — 검증기를 못 믿을 때의 예산 배분