MLOps란?

MLOps란?

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 등이 있습니다.

반응형

공유하기 글 요소 저작자표시

from http://jinho-study.tistory.com/1102 by ccl(A) rewrite - 2021-11-16 00:27:07