본문 바로가기
TIL _Today I Learned/2025.01

[DAY 116] 최종 프로젝트_ MLflow 개념

by gamdong2 2025. 1. 3.
[천재교육] 프로젝트 기반 빅데이터 서비스 개발자 양성 과정 9기
학습일 : 2025.01.03

📕 프로젝트 작업 내역

  • MLflow 란?
  • 핵심 개념
  • 프로젝트 적용 아이디어

 

📗 수행 결과

1. MLflow 란?

1) 정의

  • MLflow는 머신러닝 실험의 전체 과정을 기록하고 관리하는 오픈소스 플랫폼

2) 장점

  • 모델 개발이 반복될수록 버전이 꼬이고, 실험 결과가 뒤섞이기 쉬운데, MLflow를 활용하면 모델 학습 과정에서 사용한 파라미터, 성능 지표, 학습된 모델 파일까지 한 곳에서 추적하고 재현할 수 있게 됨
  • 즉, MLflow는 머신러닝 버전 관리 시스템 + 실험 추적 시스템 + 모델 저장소 역할을 동시에 수행

 

2. 핵심 개념

구성 요소 설명
Tracking 실험별 파라미터, 성능 지표, 메트릭 등을 기록 및 조회 (UI 제공)
Projects 코드/환경/설정을 표준화해 프로젝트 단위로 실행 가능하게 함
Models 학습된 모델을 저장하고 배포할 수 있는 구조 (서빙·로딩 지원)
Registry 모델 버전과 상태(예: staging, production)를 관리하는 저장소

 

3. 프로젝트 적용 아이디어

  •  YOLO/OCR 모델 활용 시, 다양한 전처리 방식·파라미터 조합에 따라 성능이 달라지기 때문에 결과를 체계적으로 관리할 필요가 있음
  • MLflow를 활용해 다음과 같은 구조로 모델 성능 결과를 관리

① Tracking

  • 실험 이름 지정 (run_name)
  • 파라미터: 학습률, 배치 사이즈 등
  • 메트릭: 정확도, 손실값
  • UI에서 실험별 성능 비교 가능

② Model 저장 및 버전 관리

  • 베스트 모델, 최신 모델을 .pkl 또는 .pt 형태로 저장
  • 모델 저장 후 version 태그를 붙여 실시간 관리
  • 향후 재학습 시 이전 모델과 성능 비교 용이

③ Airflow와 연동 가능

  • 학습 파이프라인 내에서 실험 기록 및 모델 저장 자동화 가능
  • 추후 mlflow.set_tracking_uri() 등을 통해 중앙 서버로 통합 관리 가능성 확보

 

 

📙 내일 일정

  • Airflow + MLflow 연동