엠엘플로우
MLflow
머신러닝 모델을 만들고 실험하고 배포하는 전 과정을 기록·관리하는 오픈소스 도구다.
쉽게 말하면
엠엘플로우는 머신러닝 모델을 만드는 과정을 일지처럼 기록해주는 도구다. 요리에 비유하면, 같은 레시피를 수십 번 다르게 시도해볼 때 재료 비율과 맛 평가를 매번 메모해두는 노트 같은 역할이다. 어떤 설정으로 학습시켰더니 성능이 얼마나 나왔는지, 어느 버전이 제일 나았는지를 나중에 한눈에 비교할 수 있게 남겨준다.
모델 하나를 완성하기까지는 데이터를 바꾸고 설정값을 조정하며 수백 번 다시 훈련시키는 일이 흔한데, 이 과정에서 어떤 시도가 가장 좋았는지 사람이 일일이 기억하긴 어렵다. 엠엘플로우는 이런 실험 기록을 자동으로 남기고, 완성된 모델을 저장해두었다가 실제 서비스에 연결할 때도 쓸 수 있게 관리해준다. 데이터브릭스(Databricks)가 만들어 널리 쓰이는 오픈소스 도구로, 여러 회사와 개발자가 자유롭게 가져다 쓴다.
직접 해보기
엠엘플로우를 실제로 만져보려면 파이썬이 설치된 환경에서 다음을 해보면 감이 잡힌다.
- pip install mlflow 명령으로 설치한다.
- 평소 쓰던 모델 학습 코드 위아래에 실험 기록을 시작하고 끝내는 코드 두 줄을 추가한다.
- 학습이 끝난 뒤 화면에 뜨는 주소로 접속하면, 방금 실행한 학습의 설정값과 결과 점수가 표로 정리돼 있는 걸 볼 수 있다.
- 같은 코드를 설정값만 바꿔 두세 번 더 돌려보고, 결과들이 나란히 비교되는 화면을 확인해본다.
