논문 리뷰: Unsupervised Model Drift Estimation with Batch Normalization Statistics
“Unsupervised Model Drift Estimation with Batch Normalization Statistics for Dataset Shift Detection and Model Selection” 논문을 개인 공부 및 리뷰를 위해 쓴 글입니다.
논문 출처 : https://arxiv.org/abs/2107.00191
배치 정규화로 모델 드리프트를 잡아라: 비지도 방식의 데이터셋 변화 감지와 모델 선택
- 머신러닝 모델을 실제로 배포한 후, 데이터가 변하면 성능이 뚝 떨어지는 ‘dataset shift’ 문제가 발생한다.
- 이 논문은 라벨이 없는 테스트 데이터에서 배치 정규화(BN) 층의 통계를 활용해 모델 드리프트를 추정하는 방법을 제안한다.
- 추가로, 입력 데이터의 샘플링 오류를 줄이기 위해 행렬 분해를 사용한다.
- 복잡한 개념을 비유와 예시로 쉽게 풀어 설명하겠다.
- 이 기술은 MLOps에서 모델 선택과 변화 감지에 유용하다.
왜 이 논문이 중요한가? (Introduction)
- 실제 머신러닝 모델은 훈련 데이터와 테스트 데이터의 분포가 다를 때( dataset shift ) 성능이 급락한다.
- 예: 훈련 때는 맑은 날 사진으로 학습했는데, 테스트 때는 비 오는 날 사진이 들어오면 모델이 헷갈린다.
- 데이터는 자주 변하는 ‘non-stationary’ 환경에서 오기 때문에, 사람이 매번 라벨을 달아 확인하기 어렵다.
- 그래서 라벨 없이(비지도) 모델 드리프트를 측정하는 게 필요하다.
- 전이 학습(Transfer Learning) 관점에서:
- 기존 모델을 재활용해 새 작업에 맞게 조정한다.
- 비유: 이미 잘 달리는 자동차(기존 모델)를 개조해 산길 주행에 맞추는 거다.
- model zoo(모델 저장소)에서 가장 적합한 모델을 골라 미세 조정(fine-tuning)하면 효율적이다. \
- 하지만 베이지안 추론처럼 복잡한 방법은 계산 비용이 크다.
- 이 논문의 아이디어: BN 층의 통계를 활용.
- BN은 훈련 중 데이터 평균/분산을 축적해 정규화한다.
-
이 통계를 테스트 데이터와 비교해 드리프트를 측정한다.
- 기여:
- 라벨 없이 모델 드리프트를 추정하는 MDE(Model Drift Estimation).
- covariate/concept shift 에서 효과 입증.
- 모델 선택과 변화 복구에 적용.
이미지 출처1- 우도(가능도, likelihood): 어떤 특정한 값을 관측할 때, 이 관측치가 어떠한 확률분포에서 나왔는가에 관한 값 2
- 베이지안 추론(bayesian inference): 사전 분포(prior probability)에 대해서 알고, 데이터에 대한 적절한 가정을 알 수 있다면 사후분포(posterior probability)를 알 수 있다.
- 훈련하는 동안 지수평균 이동과 함께 데이터의 통계를 축적하고 각 표현 계층의 입력을 테스트할 때 통계치에 의해 정규화하는 배치 정규화(BN)의 동작에 영감을 받아, BN 레이어에서 학습가능한 파라미터와 평가를 실행하여 타겟 데이터셋으로부터 model drift를 측정한다.
관련 연구 (Related Work)
- Dataset Shift 감지
- Dataset shift: 훈련과 테스트의 입력/출력 결합 확률(joint probability)이 다름.
- 비유: 훈련 때는 ‘사과=빨강’ 확률 높았는데, 테스트 때는 ‘사과=초록’이 많아짐.
- Covariate shift: 입력 분포만 다름(출력 규칙은 같음).
- 예: 훈련 사진은 낮, 테스트는 밤.
- Concept shift: 출력 규칙이 다름(입력 분포는 같음).
- 예: 같은 입력인데 라벨 기준이 바뀜.
- Concept shift는 라벨 없으면 감지 어려움.
- 모델 선택(Model Selection)
- 가장 맞는 모델 고르기: inductive bias(모델의 가정)가 타겟과 비슷한 걸 선택.
- 전이 가능성(transferability) 추정: 훈련 없이 성능 예측.
- 기존 방법:
- 도메인 유사성 측정.
- RSA: 특징 유사도 비교.
- LEEP: 수도 레이블과 교차 엔트로피.
- FSA: 비지도 특징 희소성 분석.
- 이 논문은 BN 통계로 간단히 해결.
모델 드리프트 추정 방법 (Model Drift Estimation)
- 배치 정규화(BN)란? (Batch Normalization)
- BN은 미니배치 입력을 평균 0, 분산 1로 정규화해 학습을 안정화한다.
- 비유: 학생들(입력) 키를 평균 키로 맞춰서 비교 쉽게 함.
- 훈련 중: 미니배치 평균/분산 계산, 지수 이동 평균(EMA)으로 전체 통계 축적.
- 테스트: 이 통계로 입력 정규화.
- 수식: $y = \gamma \frac{x - \mu}{\sigma} + \beta$ (γ, β 학습 가능).
- EMA: 최근 데이터에 가중치 주되, 과거도 조금 반영.
- BN 통계 기반 드리프트 점수 (Model Drift Score)
- 드리프트: 소스(훈련)와 타겟(테스트) 분포 차이.
- BN의 실행 추정치(μ, σ)가 소스 통계를 담고 있으므로, 타겟 데이터와 비교.
- 계층 l의 드리프트 점수:
- $d^{(l)} = \frac{1}{NC} \sum \frac{(\bar{\mu} - \mu)^2 + (\bar{\sigma} - \sigma)^2}{\sigma^2}$
- (Wasserstein 거리로 근사).
- 전체: 모든 계층 평균 $D = \frac{1}{L} \sum d^{(l)}$.
- 비유: 소스 ‘평균 키’와 타겟 ‘평균 키’ 차이를 측정.
- 낮은 순위 근사(Low-Rank Approximation)
- 입력 차원 줄여 샘플링 오류 줄임.
- SVD(특이값 분해)로 주요 부분 보존.
- 비유: 사진 압축처럼 핵심만 남기고 노이즈 제거.
실험 결과 (Experimental Results)
- Dataset Shift 에서 성능 분석
- Covariate shift: 방해(blur 등) 증가 시 드리프트 점수 올라감, 성능 하락 예측.
- Concept shift: 클래스 중복 조정 실험, 드리프트 점수와 에러 선형 관계.
- 모델 선택 성능
- Concept shift 복구: 변화 시 최소 드리프트 모델 선택, 자동 복구.
- Model zoo 선택: 64쌍 실험, 드리프트 점수와 정확도 상관 높음.
- 다른 아키텍처(VGG, ResNet 등)에서도 일관.
마무리
- 이 논문은 BN 통계를 활용한 MDE로 라벨 없이 드리프트를 추정한다.
- covariate/concept shift 감지와 모델 선택에 효과적이다.
- MLOps에서 실시간 변화 대응에 유용할 것이다.
- 복잡한 데이터 변화 시대에 꼭 필요한 기술이다.
댓글남기기