실용적인 MLOps - MLflow

MLflow는 MLOps를 구현하는 데 핵심적인 역할을 하는 인기 있는 오픈 소스 도구이다.

MLOps는 본질적으로 머신 러닝 라이프사이클에 데브옵스 관행을 적용하는 것입니다. 간단히 말해, 머신 러닝 모델을 개발, 배포 및 관리하는 프로세스를 간소화하는 것입니다.


이와 관련하여 개발 라이프사이클 전반에 걸쳐 머신러닝 실무자에게 지침을 제공하기 위한 품질 보증 방법론(CRISP-ML(Q))과 MLflow를 정리해봅니다.


< CRISP-ML(Q) 프로세스 모델 6단계 >

1. 비즈니스 이해 및 데이터 이해

  • 이 초기 단계에서는 비즈니스 문제와 사용 가능한 데이터에 대한 이해를 결합

  • 비즈니스 목표를 정의하고, 성공 지표를 식별하고, 데이터를 탐색하여 데이터의 특성과 머신 러닝의 잠재력을 이해

2. 데이터 준비

  • 기존 수명 주기와 마찬가지로, 이 단계에서는 모델링을 위해 데이터를 정리하고 준비하는 데 중점

  • 여기에는 누락된 값 처리, 불일치 처리, 잠재적으로 데이터를 적합한 형식으로 변환하는 작업 포함

3. 모델링 및 조정

  • 이 단계에서는 다양한 머신러닝 알고리즘을 선택하고 실험

  • 준비된 데이터로 모델을 학습시키고 하이퍼파라미터 튜닝과 같은 기술을 사용하여 성능을 최적화

4. 평가

  • 이 단계는 학습된 모델의 효과를 평가하는 데 매우 중요

  • 다양한 평가 지표를 사용하여 보이지 않는 데이터에 대한 모델의 성능을 판단하고 여러 모델을 비교하여 가장 적합한 모델 선택

5. 배포

  • 모델의 성능이 우수하다면 이제 프로덕션에 배포

  • 여기에는 모델을 패키징하고, 시스템과 통합하고, 예측을 제공하기 위한 인프라를 설정하는 작업 포함됨

6. 모니터링 및 유지 관리

  • 기존 라이프사이클과 마찬가지로 시간이 지남에 따라 모델의 성능을 모니터링하는 것은 필수

  • 정확도를 추적하고, 성능 저하를 해결하고, 필요에 따라 새로운 데이터로 모델을 재학습하여 효율성을 유지


< CRISP-ML의 장점 >

  • 표준화: 머신 러닝 프로젝트를 위한 공통 언어와 프레임워크를 제공하여 팀 간의 협업과 지식 공유 활성화

  • 구조화된 접근 방식: 단계를 따르면 포괄적이고 체계적인 개발 프로세스를 보장하여 중요한 단계를 간과할 위험을 최소화

  • 커뮤니케이션 개선: CRISP-ML 용어는 데이터 과학자, 비즈니스 이해관계자, 기타 프로젝트 구성원 간의 의사소통을 용이하게


< MLflow의 구성 요소 >

1. MLflow 추적

  • 기능

    • 머신 러닝 수명 주기 전반에 걸쳐 실험을 추적

    • 트레이닝 실행에 대한 정보를 기록하는 중앙 허브 역할

  • 주요 특징:

    • 학습 중에 사용된 매개변수(예: 학습 속도, 에포크 수) 기록

    • 모델 성능을 평가하기 위한 메트릭(예: 정확도, 손실) 캡처

    • 실행 중에 생성된 아티팩트(예: 학습된 모델 파일, 코드 버전) 추적

    • 이렇게 기록된 정보와 상호 작용하기 위한 API 및 UI 제공

2. MLflow 프로젝트

  • 기능

    • 머신 러닝 프로젝트의 재현성 보장

  • 주요 특징

    • 코드, 환경 및 종속성을 재사용 가능한 구조로 패키징

    • 동일한 프로젝트를 다른 머신이나 환경에서 일관된 결과로 실행

    • 팀원 간에 프로젝트를 쉽게 공유하여 협업 촉진

3. MLflow 모델

  • 기능

    • 학습된 머신 러닝 모델의 관리를 간소화

  • 주요 특징

    • 유연성을 위해 플랫폼에 구애받지 않는 형식으로 모델 저장

    • 변경 사항 및 롤백 추적을 위한 모델 버전 관리 용이

    • 다양한 서비스 환경에 모델 배포

    • 학습된 모델에서 예측 간소화

4. MLflow 모델 레지스트리(선택 사항)

  • 기능

    • 고급 모델 거버넌스를 위한 중앙 집중식 리포지토리 제공

  • 주요 기능

    • 학습된 모델의 다양한 버전을 저장하고 관리

    • 모델에 대한 단계 전환(예: 개발, 스테이징, 프로덕션) 제공

    • 제어된 배포를 위한 모델 승인 워크플로 구현

    • 프로덕션 환경의 거버넌스 및 책임성 강화


>> 실제 MLflow를 셋업하고, 모델 실험하는 세부 내용은 원문을 참고해주세요.


  • source: https://oleg-dubetcky.medium.com/practical-mlops-mlflow-78ff9dd7eb2d

Practical MLOps - MLflow

Medium

Practical MLOps - MLflow

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 6월 16일 오후 2:05

 • 

저장 14조회 2,352

댓글 0

    함께 읽은 게시물

    [서평] 윌라슨의 엔지니어링 리더십

    * 이 글은  "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

    ... 더 보기

    조회 978


    🌎 해외에서 일하면 뭐가 좋을까요❓

    외국어를 사용해서? 돈을 더 많이 벌어서? 새로운 기회가 많아서? 글로벌 경력을 쌓을 수 있어서?

    ... 더 보기

    1인 개발자, 5년동안 개인앱 150개 이상 만들기


    ... 더 보기

    1인 개발자, 5년동안 개인앱 150개 이상 만들기

    프로그래밍좀비

    1인 개발자, 5년동안 개인앱 150개 이상 만들기

    개발자는 개발만 잘하면 될까

    최근에 친구가 추천해준 데일 카네기의 인간관계론을 읽던 중 고액 연봉을 받는 엔지니어들의 특징에 대한 흥미로운 내용이 있었다.

    ... 더 보기

     • 

    저장 14 • 조회 2,664


    < 스타벅스 컵홀더의 손글씨가 말했다: 결국은 사람이다 >

    1

    ... 더 보기

    분량

    

    ... 더 보기

    조회 430