콘텐츠로 바로가기

Monitoring & Drift Detection

배포된 모델의 실시간 수리 성능을 감시하고, 시간의 흐름에 따라 변화하는 데이터의 물리적 분포와 모델 지능의 노화(Drift)를 수치적으로 감지하여 재교육 시점을 결정하는 역학을 다룹니다.

sys.entry
M

Me

hyunyoun's Blog

posts7 min read

1. Overview

검사 및 드리프트 탐지(Monitoring & Drift Detection, MDD)는 한 번 배포된 AI 모델이 변치 않는 수리적 진리라는 환상을 깨고, 실제 물리 세계의 변화에 따라 모델의 지능이 수치적으로 노후해지는 과정을 실시간으로 추적하는 '모델 건강 검진 물리학'입니다.

학습자는 어제의 데이터 분포와 오늘의 데이터 수치를 통계적으로 대조하는 데이터 드리프트의 수리적 수순과, 정답의 의미 자체가 물리적으로 변해버리는 컨셉 드리프트의 기제를 배웁니다. 특히, 성능이 수치적으로 임계점을 넘을 때 하드웨어 시스템에 비상을 알리는 경보(Alerting) 전략을 익힙니다. 이를 통해 모델의 성능이 조용히 수치적으로 전락하여 비즈니스 재앙을 일으키기 전에 물리적으로 선제 대응하는 하이엔드 AI 가용성 거버넌스 역량을 확보합니다.

2. Scope & Boundaries

In-Scope

  • Model Metrics Monitoring: 정확도, 정밀도 등 수리 지표의 물리적 실시간 추적
  • Data Distribution Comparison: 수치적 분포 차이(K-S Test 등)를 통한 물리적 '쏠림' 감지
  • Drift Taxonomy: Data Drift, Concept Drift, Prior Probability Drift의 수리적 구분 및 물리 측정
  • Feedback Loop Dynamics: 실제 사용자 수치를 모델 예측값과 물리적으로 대조하여 실시간 오차율 산출
  • Observability Stack: Prometheus, Grafana 등을 통한 수치 모델의 물리적 시각화 및 대시보드 구축

Out-of-Scope

  • 시스템 하드웨어 자체의 건강 상태(CPU/Disk) 모니터링 (09-04-XX SRE 영역에서 분담)
  • 모델의 수리적 알고리즘 자체에 대한 수정 (11-01/02/03 영역에서 분담)

Boundaries

  • MDD vs. Software Monitoring: 일반 SW 모니터링이 '서버가 살아있는가'에 집중한다면, MDD는 '서버 속 지능의 수리적 정확도가 여전히 물리적으로 유효한가'라는 내용의 품질에 집중하여 구분합니다.

3. Counterexample

  • 단순히 "에러 로그 확인하기"라 설명하는 것은 MDD 학습이 아닙니다. 왜 모델의 입력값 분포 수치는 그대로인데 정답률 수치만 물리적으로 떨어지는지(Concept Drift) 수리적으로 분석할 수 있어야 하며, 단순히 수치가 튀는 것이 아니라 '통계적 유의성' 수치를 통해 이것이 물리적 재학습 수순으로 이어져야 하는지 논증하지 못한다면 모니터링의 본질을 이해하지 못한 것입니다.

4. Prerequisites

  • Machine Learning Basics (Basic): 11-01-01의 수치 성능 지표(Accuracy, MSE 등) 이해가 필수입니다.
  • Unsupervised Learning Dynamics (Recommended): 11-01-03의 데이터 분포 및 거리 측정 수치 이해가 권장됩니다.

5. Learning Map

  1. Vigilant Surveillance: 모델의 모든 수리적 입출력을 실시간 물리 궤적으로 기록합니다.
  2. Detecting the Decay: 시간의 흐름에 따라 모델 지능이 물리적으로 녹슬어가는 수치(Drift)를 포착합니다.
  3. Statistical Alarms: 단순한 수치 변동을 넘어, 수리적으로 의미 있는 '물리적 변화'에만 경보를 울립니다.
  4. Adaptive Governance: 지능의 노화를 수치로 미리 알고 자동으로 물리 재무장시키는 하이엔드 서비스를 완성합니다.

6. Learning Topics

Basic

Core: 성능 기록 및 수치적 지표 (Baseline Physics)

  • Why to Learn: 현재 모델이 물리 서비스 환경에서 "제 구실을 하고 있는지" 수리적으로 확신하기 위해서입니다.
  • What to Learn:
    • Golden Signals for ML: 추론 지연 시간, 예측 수치 분포, 수리적 정확도 추이
    • Baseline Setup: 학습 당시의 가장 '건강한 상태'를 수치적으로 정의하여 보관
    • Success vs Failure logging: 모델이 맞힌 것과 틀린 것의 물리적 기록 분리
  • How to Learn:
    • Prometheus를 사용하여 모델의 실시간 정확도(AccuracyAccuracy) 수치가 물리적 시간 축에 따라 그려지는 대시보드 확인 실습
    • 특정 하드웨어 노드에서 수리 연산 오차가 빈번하게 발생하는 '물리적 병목' 수치 분석 훈련
  • Implement: 모델의 예측값과 실제 라벨 수치를 받아 성능 지표를 실시간 계산하는 기초 Performance_Logger

Core: 데이터 드리프트와 통계 검정 (Drift Mechanics)

  • Why to Learn: 세상이 변함에 따라 모델에게 들어오는 수치들의 물리적 분포가 '어떻게' 달라졌는지 수리 분석하기 위함입니다.
  • What to Learn:
    • Population Stability Index (PSI): 어제의 수치 데이터와 오늘의 수치 데이터 간의 물리적 괴리율 측정
    • Kolmogorov-Smirnov (K-S) Test: 두 수치 분포가 물리적으로 동일한지 수리적으로 검정
    • Covariate Shift: 모델 입력 변수(피처)들의 수치적 특징이 한쪽으로 물리 이동하는 현상
  • How to Learn:
    • Evidently AI와 같은 도구를 사용해, 가공의 데이터 변동을 주고 수리적 드리프트 경고 수치가 물리적으로 배출되는 과정 실습
    • 사용자 연령대가 수치적으로 고령화될 때 모델 출력 수치가 물리적으로 왜곡되는 Prior Probability Drift 분석 훈련
  • Implement: 두 데이터셋의 수치 분포 차이를 계산하여 드리프트 수치를 뱉는 Distribution_Ametist

Practical

Core: 컨셉 드리프트 및 재학습 트리거 (Retrain Ops)

  • Why to Learn: 데이터가 아닌 '정답의 규칙' 자체가 물리적으로 변했을 때(예: 유행의 변화 등), 지능의 폐기 수순을 결정하기 위해서입니다.
  • What to Learn:
    • Concept Drift: 동일한 입력 수치에 대해 정답의 물리적 기준이 바뀌는 수리적 역설
    • Retraining Trigger: 성능 수치가 임계점(ThresholdThreshold) 이하로 물리 추락할 시 자동 학습 가동
    • Online vs Offline validation: 실시간으로 들어오는 수치로 모델을 물리 검증하는 법
  • How to Learn:
    • 계절성 데이터(여름/겨울)를 학습시킨 모델의 성능이 수리적으로 급락하는 물리적 시점을 포착하고 대응하는 실습
    • 그라운드 트루스(Ground Truth) 수치가 느리게 도착하는 환경에서의 수리적 성능 추론 기술 연구
  • Implement: 성능 하락 수치가 감지되면 외부 학습 파이프라인을 하드웨어 호출하는 ML_Emergency_Trigger

Advanced

Core: 근본 원인 분석 및 관측 가능성 (Observability Theory)

  • Why to Learn: "모델이 틀렸다"를 넘어, 수조 개의 파라미터와 데이터 중 "무엇이 물리적으로 잘못되었나"를 수리 증명하기 위함입니다.
  • What to Learn:
    • Feature Importance Drift: 모델이 의존하는 수리적 근거(피처 기여도)가 물리적으로 변하는 양상 추적
    • Root Cause Analysis (RCA): 성능 하락 수치의 물리적 원인이 파이프라인인지, 데이터 품질인지 수리 판별
    • Model Monitoring as a Service: 여러 모델의 수치 건강 상태를 전사적으로 물리 통합 관리하는 하이엔드 거버넌스
  • How to Learn:
    • SHAP 수치 변화를 관찰하여, 특정 물리 변수의 수리적 가중치가 왜 갑자기 0으로 수렴했는지 원인 분석 실습
    • 모델의 수리적 예측에서 '편향(Bias)' 수치가 특정 물리적 집단(인종, 성별 등)에서 튀는지 자동 감지 시스템 설계 훈련
  • Implement: 슬라이딩 윈도우를 통해 수치 피처의 중요도 변화를 물리 추적하는 Feature_Observatory

7. Terminology

Term (EN / ko, abbr) 1문장 정의 단계(기본/권장/실무/심화) 역할/맥락 관련 개념 유사/대비/함께 사용 오해 포인트 Evidence(Primary/Secondary/Industry) Flags(core)
Data Drift 모델에 입력되는 데이터의 수리적 분포가 학습 시점의 물리적 분포와 통계적으로 달라지는 현상입니다. 기본 변화 감지 Feature / PSI Concept Drift 입력 수치의 변화에 집중함 P4:DSBOK core
Concept Drift 입력 데이터의 분포는 그대로이나, 수리적 입출력 사이의 관계(정답의 물리적 기준)가 변하는 현상입니다. 추천 지능 노화 Meaning / Decy Data Drift 의미의 변화에 집중함 P4:DSBOK core
PSI 두 수지 데이터 집합 간의 물리적 안정성을 수치화한 지표로, 드리프트의 정도로 수리 정량화합니다. 추천 정량 지표 Stability / Drift Entropy 0.1 이하면 물리적 안점함 Industry core
Observability 시스템의 외부 수치(출력)를 통해 내부의 수리적 상태와 모델의 물리적 건전성을 얼마나 잘 이해할 수 있는지를 나타내는 척도입니다. 실무 상위 개념 Trace / Alert Monitoring 단순 감시보다 정밀한 분석임 P5:SFIA core

8. References

Primary

Secondary

  • [Monitoring Machine Learning Models in Production] Various - Patterns and practices.
  • [Machine Learning Observability with Evidently] — Practical implementation guide.

Industry

  • [Google Cloud: ML Ops Monitoring and Observability] — Best practices for drift.
  • [WhyLabs: The Standard for Machine Learning Observability] — Industrial context.

9. Final Checklist

Primary

  • '데이터 드리프트'를 감지하기 위한 'K-S Test'의 수리적 유의 수준(α\alpha) 수치가 물리적 경보 오발령에 미치는 영향을 설명 가능한가? (P4)
  • '컨셉 드리프트' 발생 시, 단순한 수치 조정이 아닌 물리적 '전체 재학습'이 왜 필요한지 수리적으로 기술할 수 있는 가? (P4)

Secondary

  • '모델 가용성' 수치가 하드웨어 성능 부족이 아닌 수리적 '지능 지수 하락'에서 올 수 있음을 소통 가능한가?
  • SHAP 기여도 수치를 바탕으로 모델이 특정 '잘못된 수리적 인과'에 집착하는 물리적 징후를 논증할 수 있는 가?

Industry

  • 실무 서비스에서 '일일 모니터링 리포트'의 수치 변동 폭이 하드웨어 시스템 오류인지 실제 세계의 물리적 변동인지 제안할 수 있는 가? (SFIA)
  • Grafana 대시보드의 데이터 소스를 물리적으로 분리하여 실시간 추론 수치와 배치 검증 수치를 수리 대조할 수 있는 가?