Upstage AI Lab 4기

MLOps에 대한 아주아주 기초적인 정보들

Eddie_D 2024. 7. 4. 12:34

MLOps는 "Machine Learning Operations"의 약자로, 머신러닝 모델의 개발, 배포, 관리 및 유지보수를 위한 일련의 실천 방법과 도구들을 의미합니다. MLOps는 DevOps(Development Operations) 개념을 머신러닝에 적용한 것으로, 머신러닝 워크플로우의 모든 단계에서 협업과 자동화를 촉진합니다. 이를 통해 모델을 신속하게 배포하고, 지속적으로 운영하고, 성능을 모니터링하고, 필요한 경우 개선할 수 있습니다.

DevOps(Development Operations)란?

소프트웨어 개발과 IT 운영 간의 협업과 통합을 촉진하는 일련의 실천 방법과 도구들을 의미합니다. DevOps의 주요 목표는 소프트웨어 개발과 배포 주기를 단축하고, 높은 품질의 소프트웨어를 안정적으로 신속하게 전달하는 것입니다.

MLOps 도구들:

  • Git: 코드 및 데이터 버전 관리.
  • Jenkins, GitHub Actions: CI/CD 파이프라인 설정.
  • Docker, Kubernetes: 컨테이너화 및 오케스트레이션.
  • MLflow, DVC (Data Version Control): 머신러닝 실험 관리 및 데이터 버전 관리.
  • TensorFlow Serving, TorchServe: 모델 서빙.
  • Prometheus, Grafana: 모니터링 및 로깅

DevOps 도구들:

  • 소스 코드 관리: Git, GitHub, GitLab
  • CI/CD 파이프라인: Jenkins, Travis CI, CircleCI, GitHub Actions
  • 컨테이너화: Docker
  • 오케스트레이션: Kubernetes
  • 인프라 자동화: Terraform, Ansible, Chef, Puppet
  • 모니터링 및 로깅: Prometheus, Grafana, ELK Stack (Elasticsearch, Logstash, Kibana), Splunk



    https://www.youtube.com/watch?v=q2N6NZKxipg