4 단계. 결과 확인¶
이 단계에서는 MLflow에서 실험 결과와 등록된 모델을 확인하고, 모델 파일을 PVC에 저장합니다.
4-1. MLflow 실험 결과 확인¶
워크스페이스 > 플랫폼 앱 > MLflow
좌측 메뉴 Experiments에서 2단계에서 설정한 EXPERIMENT_NAME을 찾아 클릭합니다.
Run 목록에서 방금 실행된 Run을 클릭합니다. Run 이름은 xgboost-{실행일시} 형식으로 자동 생성됩니다.
Run 상세 페이지에서 학습에 사용한 파라미터와 평가 메트릭을 확인합니다.
Parameters 섹션에는 XGBoost 하이퍼파라미터와 데이터셋 정보가 기록됩니다.
Metrics 섹션에서 아래 평가 지표를 확인합니다.
| 메트릭 | 설명 |
|---|---|
rmse |
평균 제곱근 오차 — 낮을수록 좋음 |
mae |
평균 절대 오차 — 낮을수록 좋음 |
r2 |
결정계수 — 1에 가까울수록 좋음 |
4-2. 모델 등록 확인¶
좌측 메뉴 Models에서 2단계에서 설정한 MODEL_NAME을 찾아 클릭합니다.
등록된 버전 목록이 나타납니다. DAG를 실행할 때마다 새 버전이 추가됩니다.
4-3. 모델 파일을 PVC에 저장¶
MLflow에 등록된 모델의 실제 파일은 S3에 저장되어 있습니다. 다음 단계(모델 서빙)를 위해 PVC로 다운로드합니다.
왜 PVC에 따로 저장하나요?
Code-server는 컨테이너 기반 앱입니다. 앱을 배포 해제하면 컨테이너 내부 파일이 모두 삭제됩니다. PVC는 Code-server와 독립적으로 유지되므로, 모델 파일을 PVC에 저장해두면 Code-server를 재배포하거나 삭제해도 파일이 보존됩니다.
Code-server 터미널에서 아래 명령을 실행합니다.
cd ~/airflow-dag
python download_model.py
최신 모델을 자동으로 찾아 /mnt/model-registry에 저장합니다.
저장이 완료되면 아래와 같이 파일을 확인합니다.
ls /mnt/model-registry
특정 버전 지정하기
MLflow에서 여러 번 실행한 경우, 특정 모델 버전을 지정하여 다운로드할 수 있습니다.
# 사용 가능한 모델 ID 목록 확인
python download_model.py --list
# 특정 모델 ID로 다운로드
python download_model.py --model-id m-{model-id}
모델 ID(m-...)는 MLflow Models 페이지에서 확인할 수 있습니다.
다음 단계에서는 저장된 모델을 Inference Endpoint로 배포하고 추론 요청을 보냅니다.