운영 환경에서 모델을 살아 있게 하는 기반
모델을 내보내 배포한 뒤 그대로 두면 현실 데이터가 바뀌면서 성능이 조용히 떨어져. MLOps는 머신러닝 모델을 다른 운영 시스템처럼 버전 관리하고 관측하며, 데이터가 변했을 때 재학습하는 실무야.
MLOps의 네 가지 기둥
- 실험 추적: 모든 실행의 하이퍼파라미터, 평가지표, 결과물을 기록해. Weights & Biases, MLflow, Comet이 널리 쓰여.
- 모델 버전 관리: 모델, 학습 데이터, 코드, 실행 환경을 함께 보존해. Git LFS, DVC, MLflow 모델 등록소나 매니페스트를 곁들인 객체 저장소를 사용할 수 있어.
- 운영 환경 관측: 지연 시간, 처리량, 오류율과 함께 예측 분포와 입력 분포 같은 모델 동작을 추적해 변화를 감지해.
- 재학습 조건: 관측 신호가 성능 저하를 가리키면 자동으로 재학습하는 파이프라인을 만들어.
최소한으로 실용적인 구성
개인 프로젝트에 Kubernetes로 관리하는 Kubeflow까지 필요하지는 않아. 다음이면 충분해:
- Weights & Biases나 MLflow 같은 실험 추적 도구 하나. 하나를 골라 일관되게 사용해.
- 날짜, 데이터셋 버전, 평가지표를 담은 매니페스트와 함께 저장한 모델 파일.
- 입력과 출력을 표본으로 남기는 운영 기록. 모든 요청을 기록하지는 마.
- 운영 예측 분포를 학습 분포와 비교하고 변화가 생기면 경고하는 주간 스크립트.
이 정도면 충분해. 대기업용 MLOps 묶음은 더 많은 기능을 제공하지만 1~3명 팀에는 지나칠 수 있어. 단순하게 시작하고 필요할 때만 기능을 더해.