728x90
반응형

MLOps는 머신러닝 시스템 개발과 시스템 운영을 통합하는 것을 목표로 하는 머신러닝 엔지니어링 방식입니다.

머신러닝 모델을 안정적이고 효율적으로 배포 및 유지하는 것을 목표로 한다고 보시면 될 것 같습니다.

 

MLOps의 구성 요소로는 크게 데이터, 모델, 서빙 3가지로 나눌 수 있는데

아래와 같이 아주 많은 플랫폼, 오픈 소스들이 존재합니다. 

데이터

  • 데이터 수집 파이프라인(ETL Pipeline) -> Sqoop, Flume, Kafka, Flink, Spark Streaming, Airflow
  • 데이터 저장 -> MySQL, Hadoop, Amazon S3, MinIO
  • 데이터 관리 -> TFDV, DVC, Feast, Amundsen

모델

  • 모델 개발 -> Jupyter Hub, Docker, Kubeflow, Optuna, Ray, katib
  • 모델 버전 관리 -> Git, MLflow, Github Action, Jenkins
  • 모델 학습 스케즐링 관리 -> Grafana, Kubernetes

서빙

  • 모델 패키징 -> Docker, Flask, FastAPI, BentoML, Kubeflow, TFServing, seldon-core
  • 서빙 모니터링 -> Prometheus, Grafana, Thanos
  • 파이프라인 매니징 -> Kubeflow, argo workflows, Airflow

여기서 서빙이란 개념은 조금 낯선데 다른 애플리케이션에서도 ML 모델을 사용할 수 있도록 모델을 배포하거나,

모델 API를 제공한다고 이해하면 될 것 같습니다.

 

그리고 위의 기능들을 제공해주는 Aws SageMaker, GCP Vertex AI, Azure Machine Learning 등이 있습니다. 

728x90
반응형

+ Recent posts