MLOps 개론

홍찬우·2023년 7월 24일
0

MLOps란?

ML code는 ML system 중 일부에 불과함

MLOps = ML + Ops(Operations)

  • 머신러닝 모델을 운영하면서 반복적으로 필요한 업무를 자동화시키는 과정

  • ML 엔지니어링 + 데이터 엔지니어링 + 클라우드 + 인프라

MLOps의 목표는 빠른 시간 내에 가장 적은 위험을 부담하며 아이디어 단계부터 Production 단계까지 ML 프로젝트를 진행할 수 있도록 기술적 마찰을 줄이는 것


Research vs Production


MLOps Component

  • 집에서의 요리 연구와 창업은 고려해야 할 것이 많이 다름


Infra

  • 클라우드 : AWS, GCP, Azure, NCP 등
  • On Premise : 회사나 대학원 전산실에 서버 직접 설치


Serving

  • Batch Serving

    • 많은 데이터를 일정 주기로 한꺼번에 예측
  • Online Serving

    • 실시간으로 예측

    • 동시에 여러 요청이 와도 병목이 없어야 함



Experiment & Model Management

  • 가장 좋은 성능의 모델 외에도

    • 모델 생성일, 모델 성능, 모델 메타 정보, 모델 artifact 등 저장
  • mlflow

    • 대표적인 라이브러리

    • auto logging 가능



Feature Store

  • 머신러닝 Feature를 집계한 Feature Store

  • Feast 라이브러리

    • 유일한 feature store 라이브러리


Data Validation

  • Data Drift, Model Drift, Concept Drift

  • TFVD (TensorFlowValidation) 라이브러리 사용


Continuous Training

  • 따로 라이브러리는 현재 없음


Monitoring



AutoML

  • 데이터만 주면 자동으로 모델을 제작



MLOps는 회사 비즈니스 상황과 모델 운영 상황에 따라 우선 순위가 달라짐

앞선 모든 요소가 항상 존재해야 하는 것은 아님

처음엔 작은 단위의 MVP(Minimal Value Product)로 시작해서 점점 운영 리소스가 많이 소요될 때 하나씩 구축하는 방식을 활용







※ 모든 이미지 및 코드 출처는 네이버 커넥트재단 부스트캠프 AI Tech 5기입니다. ※

profile
AI-Kid

0개의 댓글