실험부터 배포까지 : MLflow 101
홈페이지홈페이지 > 소식 > 실험부터 배포까지 : MLflow 101

실험부터 배포까지 : MLflow 101

Feb 24, 2024

아파크 시대

따르다

--

1

듣다

공유하다

상상해 보세요. 새로운 비즈니스 아이디어가 있고 필요한 데이터가 바로 눈앞에 있습니다. 환상적인 머신러닝 모델을 만드는 데 열중하고 계시군요 🤖. 하지만 현실적으로 이 여행은 결코 쉽지 않습니다! 현기증이 날 때까지 데이터 전처리, 알고리즘 선택, 하이퍼파라미터 조정 등을 미친 듯이 실험하게 될 것입니다 😵‍🎃. 프로젝트가 점점 까다로워질수록 연기를 잡으려는 것과 같습니다. 그 과정에서 가졌던 모든 거친 실험과 훌륭한 아이디어를 잊어버리게 됩니다. 그리고 저를 믿으세요. 고양이를 모으는 것보다 더 어려운 일을 모두 기억하세요 😹

하지만 더 많은 것이 있습니다! 해당 모델을 확보한 후에는 챔피언처럼 배포해야 합니다! 그리고 끊임없이 변화하는 데이터와 고객 요구 사항으로 인해 양말을 바꾸는 것보다 모델을 더 많이 재교육하게 될 것입니다! 끝없는 롤러코스터와도 같으며, 이 모든 것을 함께 유지하려면 견고한 솔루션이 필요합니다 🔗. MLOps를 입력하세요! 혼돈에 질서를 가져오는 비법입니다 ⚡

좋아요, 여러분, 이제 이유를 알았으니뒤에서 What에 대해 자세히 알아보겠습니다.그리고 육즙이 많은 방법이 블로그에서.

이 블로그가 끝날 때까지 우리가 구축할 파이프라인을 살펴보겠습니다 👆

꽉 잡아요. 빨리 읽을 수는 없으니까! 우리는 엔드투엔드 MLOps 솔루션을 제작하고 있으며 이를 현실적으로 유지하기 위해 이를 세 개의 섹션으로 나누어야 했습니다.

섹션 1:기초와 이론을 정리해보겠습니다 📜

섹션 2: 이제 액션이 시작됩니다! 우리는 스팸 필터를 구축하고 MLflow를 사용하여 모든 미친 실험을 추적하고 있습니다 🥼🧪

섹션 3:우리는 실제 거래, 즉 챔피언 모델을 배포 및 모니터링하여 프로덕션에 사용할 수 있도록 만드는 데 집중할 것입니다 🚀

MLOps를 활용해 보세요!

MLOps는 데이터 과학자가 대규모 프로덕션 환경 내에서 전체 모델 교육, 배포 및 관리 수명주기를 단순화하고 자동화하는 것을 목표로 하는 방법론 및 업계 모범 사례 모음을 나타냅니다.

이는 전체 기계 학습 수명주기를 관리하기 위한 고유하고 독립형 접근 방식으로 점차 떠오르고 있습니다. MLOps 프로세스의 필수 단계는 다음과 같습니다.

어떻게 구현할 것인가? Neptune, Comet, Kubeflow 등과 같은 여러 옵션을 사용할 수 있지만 우리는 MLflow를 계속 사용할 것입니다. 이제 MLflow에 대해 알아보고 그 원리를 살펴보겠습니다.

MLflow는 기계 학습의 스위스 군용 칼과 같습니다. 매우 다재다능하고 오픈 소스이므로 전체 ML 여정을 상사처럼 관리하는 데 도움이 됩니다. 모든 주요 ML 라이브러리(TensorFlow, PyTorch, Scikit-learn, spaCy, Fastai, Statsmodels 등)와 잘 작동합니다. 하지만 원하는 다른 라이브러리, 알고리즘 또는 배포 도구와 함께 사용할 수도 있습니다. 또한 사용자 정의가 매우 용이하도록 설계되었습니다. 사용자 정의 플러그인을 사용하여 새로운 작업 흐름, 라이브러리 및 도구를 쉽게 추가할 수 있습니다.

MLflow는 모듈식 및 API 기반 설계 철학을 따르며 기능을 네 가지 개별 부분으로 나눕니다.

이제 각 부분을 하나씩 확인해 보도록 하겠습니다!

이는 MLflow의 제품에 대한 기본적인 이해를 위한 요약입니다. 더 자세한 내용은 여기 👉📄에서 공식 문서를 참조하세요. 이제 이러한 지식을 바탕으로 섹션 2로 들어가겠습니다. 간단한 스팸 필터 앱을 만들어 시작한 다음 본격적인 실험 모드로 들어가 고유한 실행으로 다양한 실험을 추적하겠습니다!

좋습니다, 여러분, 흥미진진한 여행을 준비하세요! 연구실에 들어가서 실험을 시작하기 전에 공격 계획을 세워 우리가 무엇을 만들고 있는지 알아봅시다. 먼저, Random Forest 분류기를 사용하여 스팸 분류기를 작동시킬 것입니다(Multinomial NB가 문서 분류에 더 잘 작동한다는 것을 알고 있지만 Random Forest의 하이퍼파라미터를 가지고 놀고 싶습니다). 우리는 단지 스릴을 위해 의도적으로 처음에는 별로 좋지 않게 만들 것입니다. 그런 다음 창의력을 발휘하고 다양한 실행을 추적하고 하이퍼파라미터를 조정하고 Bag of Words 및 Tfidf와 같은 멋진 기능을 실험해 보겠습니다. 그리고 무엇을 추측합니까? 모든 멋진 추적 작업을 위해 MLflow UI를 보스처럼 사용하고 다음 섹션을 준비하겠습니다. 그러니 안전벨트를 단단히 매세요. 우리는 즐거운 시간을 보낼 테니까요! 🧪품