MLOps roadmap 2024

feat.DeepL


MLOps 엔지니어의 역할은 ML 엔지니어의 역할과는 다릅니다. 회사마다 역할이 다르지만 일반적으로 ML 엔지니어는 개별 프로젝트를 프로덕션으로 전환하는 데 더 중점을 두는 반면, MLOps 엔지니어는 머신러닝 엔지니어와 데이터 과학자가 사용하는 플랫폼을 구축하는 데 더 많은 노력을 기울입니다.


이러한 플랫폼을 구축하려면 다양한 기술이 필요합니다. 다음은 MLOps 엔지니어가 되는 데 도움이 되는 로드맵입니다. 프로그래밍 기술부터 MLOps 구성 요소와 인프라를 코드로 구현하는 것까지 단계별로 진행하도록 되어 있습니다.


기억하세요: 모든 도구를 다 알 필요는 없습니다. MLOps를 위한 각 도구 중 한 가지 유형만 제대로 이해하고 경험하는 것으로 충분합니다. 여기에서는 시작하기에 가장 일반적이고 인기 있는 몇 가지 도구를 제안합니다. 로드맵에는 올해 중 일부 업데이트가 있을 수 있습니다. 최신 버전을 확인하고 몇 가지 제안 사항이 있으면 Marvelous MLOps의 MLOps 로드맵 리포지토리(https://github.com/marvelousmlops/mlops-roadmap-2024/)를 확인하세요.


1. 프로그래밍

MLOps 엔지니어에게 프로그래밍 기술은 필수입니다. Python은 머신 러닝에 가장 많이 사용되는 언어입니다. MLOps 엔지니어는 머신 러닝 엔지니어 및 데이터 과학자와 협업하기 때문에 Python을 배우는 것이 중요합니다.


1.1. Python 및 IDE

적절한 Python 책을 읽고 개념을 연습하는 것으로 Python 학습을 시작하는 것이 좋습니다.

  • 튜토리얼 추천: https://realpython.com

  • 추천 도서 Python 크래시 코스, 3판: 실습 위주의 프로젝트 기반 프로그래밍 입문 3판(Eric Matthes 저)

  • 코드 실습 제안: https://leetcode.com/problemset/

  • 코스 추천: 파이썬 3 배우기(https://www.codecademy.com/learn/learn-python-3)

  • 트랙 제안:파이썬 기초(https://app.datacamp.com/learn/skill-tracks/python-fundamentals), 파이썬 프로그래밍(https://app.datacamp.com/learn/skill-tracks/python-programming)


1.2. Bash 기본 사항 및 명령줄 편집기

CI/CD 파이프라인에 단계를 추가하고, 도커 파일을 만드는 등 여러 가지 작업을 하려면 Bash 기본 사항을 이해해야 합니다.

  • 도서 추천: The Linux Command Line, 2nd Edition by William E. Shotts

  • 코스 추천: Bash 마스터하기(https://www.udemy.com/course/bash-mastery/?couponCode=24T4FS22124)

  • VIM은 가장 널리 사용되는 명령줄 편집기 중 하나입니다. 가볍고 쉽게 시작할 수 있습니다.

  • 튜토리얼 제안: VIM 초보자 가이드(https://www.freecodecamp.org/news/vim-beginners-guide/), VIM 모험(https://vim-adventures.com/), Daniel Miessler의 VIM(https://danielmiessler.com/p/vim/)


2. 컨테이너화와 Kubernetes

컨테이너는 기본 인프라에 관계없이 소프트웨어 개발 및 배포를 간소화하는 데 도움이 되는 격리된 소프트웨어 환경입니다. 이는 최신 소프트웨어 엔지니어링 모범 사례의 필수 요소입니다.


2.1. Docker

Docker는 가장 인기 있는 오픈 소스 컨테이너화 플랫폼 중 하나로, 코드 개발, 모델 교육, 엔드포인트 배포 등 다양한 목적으로 MLOps에서 널리 사용되고 있습니다.

  • Docker 로드맵: https://roadmap.sh/docker

  • 튜토리얼 제안: Techworld의 Nana가 작성한 전체 Docker 튜토리얼(https://www.youtube.com/watch?v=3c-iBn73dDE&ab_channel=TechWorldwithNana)


2.2. Kubernetes

Kubernetes는 MLOps 엔지니어가 반드시 배워야 할 필수 요소입니다. 머신 러닝 모델 학습, 모델 엔드포인트 배포, 대시보드 제공에 널리 사용됩니다.

  • Kubernetes 로드맵: https://roadmap.sh/kubernetes

  • 튜토리얼 제안: freecodecamp.com의 Kubernetes 과정(https://www.youtube.com/watch?v=d6WC5n9G_sM&ab_channel=freeCodeCamp.org)

  • 코스 제안: Kubernetes 마스터(https://www.udemy.com/course/kubernetesmastery/?couponCode=24T4FS22124)

K9s는 Kubernetes 클러스터를 쉽게 관리할 수 있는 강력한 CLI 도구입니다:

https://k9scli.io


3. 머신 러닝 기초

MLOps 엔지니어는 머신 러닝 엔지니어 및 데이터 과학자와 함께 작업하며 머신 러닝 모델에 대한 기본적인 이해가 있어야 합니다.

데이터 과학자와 머신 러닝 엔지니어가 하는 일을 제대로 이해하지 못하면 MLOps 원칙을 완전히 받아들일 수 없습니다.

  • 코스 제안: https://mlcourse.ai/, https://course.fast.ai

  • 도서 추천: 엔지니어를 위한 응용 머신 러닝 및 AI(Jeff Prosise 저)


4. MLOps 원칙

MLOps 엔지니어는 MLOps 원칙과 MLOps 성숙도에 기여하는 요인이 무엇인지 알고 있어야 합니다.

  • 도서: 머신 러닝 시스템 설계하기 𝖻𝗒 Chip Huyen, MLOps 소개 𝖻𝗒 마크 트레베일 𝖺𝗇𝖽 데이터이쿠

  • MLOps 성숙도 평가(https://marvelousmlops.substack.com/p/mlops-maturity-assessment) 및 ml-ops.org(https://ml-ops.org/)를 확인하세요.


5. MLOps 구성 요소

MLOps 플랫폼은 버전 제어, CI/CD, 오케스트레이션, 컴퓨팅, 서비스 및 기능 저장소와 같은 여러 MLOps 구성 요소로 구성되어 있습니다. 결국 MLOps 프레임워크는 이러한 도구를 결합하는 것입니다. MLOps를 위한 최소한의 필수 도구 모음 문서를 확인하세요.

  • 도서 추천: ML Engineering with Python by Andy McMahon

  • 추천 코스 Made with ML MLOps course(https://madewithml.com/courses/mlops/) , The full stack 7-steps MLOps framework(https://www.pauliusztin.me/courses/the-full-stack-7-steps-mlops-framework), End-to-end machine learning(https://www.udemy.com/course/sustainable-and-scalable-machine-learning-project-development/?couponCode=24T4FS22124)


5.1. 버전 관리 및 CI/CD 파이프라인

버전 관리와 CI/CD 파이프라인이 없으면 ML 모델 배포를 추적하고 재현할 수 없습니다.

가장 널리 사용되는 버전 제어 시스템은 Git입니다. GitLab과 GitHub는 가장 널리 사용되는 버전 관리 서비스입니다. 이 두 가지를 모두 배울 필요는 없습니다.

  • 도서: Learning GitHub Actions by Brent Laster, Learning Git by Anna Skoulikari

  • 튜토리얼 및 강좌:Git & GitHub for beginners(https://www.youtube.com/watch?v=RGOj5yH7evk&ab_channel=freeCodeCamp.org), Taking Python to Production: A Professional Onboarding Guide (https://www.udemy.com/course/setting-up-the-linux-terminal-for-software-development/?couponCode=24T4FS22124), The Missing Semester of Your CS Education (mit.edu)(https://missing.csail.mit.edu/), https://learngitbranching.js.org/


5.2. 오케스트레이션

데이터 엔지니어링에서와 마찬가지로, 머신 러닝 엔지니어링에서도 Mage나 Airflow와 같은 오케스트레이션 시스템이 널리 사용됩니다. (단순한 오케스트레이션 이상의 기능을 하는) 머신 러닝 전용 오케스트레이션 도구(예: Kubeflow 또는 Metaflow)도 있습니다. 업계에서는 아직 에어플로우가 더 일반적인 것으로 보입니다.


  • 코스 제안: Introduction to Airflow in Python(https://app.datacamp.com/learn/courses/introduction-to-airflow-in-python)

  • 참고: 앤디 맥마흔의 『파이썬을 사용한 ML 엔지니어링』과 풀 스택 7단계 MLOps 프레임워크에서도 Airflow(https://www.pauliusztin.me/courses/the-full-stack-7-steps-mlops-framework)


5.3. 실험 추적 및 모델 레지스트리

실험 추적은 다양한 모델 훈련 실행에 속하는 메타데이터, 파라미터 및 아티팩트를 로깅하는 것을 의미합니다. 저장되는 항목은 알고리즘과 사용자의 필요에 따라 다릅니다. 실험 추적을 사용하면 서로 다른 실행을 비교할 수 있습니다. 서로 다른 실험 실행의 모델을 등록하고 실험에 연결할 수 있어 추적에 도움이 됩니다.


MLflow는 모델 등록 및 실험 추적을 위한 가장 인기 있는 도구일 것입니다. MLflow는 오픈 소스이며 다양한 플랫폼 및 도구와 통합됩니다.

  • 강좌 추천: MLflow Udemy 강좌(https://www.udemy.com/course/mlflow-course/?couponCode=24T4FS22124), 엔드투엔드 머신 러닝-MLflow 편(https://www.udemy.com/course/sustainable-and-scalable-machine-learning-project-development/)


5.4. 데이터 계보 및 기능 저장소

최근 들어 피처 스토어가 인기를 끌면서 이제 MLOps 인프라의 중요한 구성 요소로 간주될 수 있습니다. 기능 저장소는 기능 사용을 추적하는 데 도움이 되며 모델 간에 기능을 공유할 수 있게 해줍니다. 오픈 소스 솔루션이 필요하다면 가장 인기 있는 솔루션인 Feast를 고려해 보세요

  • 튜토리얼 제안: Feast로 피처 스토어 만들기 1부(https://kedion.medium.com/creating-a-feature-store-with-feast-part-1-37c380223e2f), 2부(https://kedion.medium.com/feature-storage-for-ml-with-feast-part-2-34df1971a8d3), 3부(https://kedion.medium.com/feature-storage-for-ml-with-feast-a061899fc4a2)

동일한 기능을 공유하는 모델이 많지 않은 경우에는 기능 스토어 자체가 필요하지 않습니다. 하지만 모델 아티팩트를 생성하는 데 어떤 데이터가 사용되었는지 추적할 필요가 있습니다. 이를 위해 DVC를 사용하는 것을 고려하세요.

  • 코스 제안: 엔드투엔드 머신 러닝(https://www.udemy.com/course/sustainable-and-scalable-machine-learning-project-development/)


5.5. 모델 훈련 및 제공

모델을 어디에서 훈련하고 어떻게 제공할지는 아마도 MLOps에서 가장 논란이 많은 주제일 것입니다. 이 질문에 대한 답은 "상황에 따라 다르다"입니다. 많은 데이터 과학 팀들이 모델을 학습하고 제공하기 위해 AWS Sagemaker, Azure ML 또는 Vertex AI와 같은 클라우드 네이티브 솔루션에 의존합니다. 조직에서 Kubernetes에 크게 의존하고 있고 이를 지원하는 적절한 팀이 있다면 사용을 고려해 보세요. 오케스트레이션을 위해 Airflow를 사용하는 경우, Kubernetes에서 모델 트레이닝 작업을 트리거할 수 있는 KubernetesPodOperator가 있습니다. 엔드포인트 배포의 경우, FastApi가 가장 일반적인 선택입니다.

  • 리포지토리 제안: ML 배포 k8s FastAPI(https://github.com/sayakpaul/ml-deployment-k8s-fastapi/tree/main)

  • 튜토리얼 제안: FastAPI로 머신 러닝 앱을 빌드하는 방법(https://dev.to/bravinsimiyu/beginner-guide-on-how-to-build-a-machine-learning-app-with-fastapi-part-ii-deploying-the-fastapi-application-to-kubernetes-4j6g)


오케스트레이터로 Kubeflow를 사용하는 경우, 트레이닝에는 Kubeflow 파이프라인을 사용하고 서비스에는 KServe를 사용할 수 있습니다.

  • 튜토리얼 제안: 기본 kubeflow 파이프라인(https://towardsdatascience.com/tutorial-basic-kubeflow-pipeline-from-scratch-5f0350dc1905), 머신 러닝 파이프라인 구축 및 배포,(https://www.datacamp.com/tutorial/kubeflow-tutorial-building-and-deploying-machine-learning-pipelines?utm_source=google&utm_medium=paid_search&utm_campaignid=19589720818&utm_adgroupid=157156373991&utm_device=c&utm_keyword=&utm_matchtype=&utm_network=g&utm_adpostion=&utm_creative=683184494153&utm_targetid=dsa-2218886984380&utm_loc_interest_ms=&utm_loc_physical_ms=9064564&utm_content=&utm_campaign=230119_1-sea~dsa~tofu_2-b2c_3-eu_4-prc_5-na_6-na_7-le_8-pdsh-go_9-na_10-na_11-na-dec23&gad_source=1) KServe 튜토리얼(https://towardsdatascience.com/kserve-highly-scalable-machine-learning-deployment-with-kubernetes-aa7af0b71202)


5.6. 모니터링 및 통합 가시성

모니터링과 통합 가시성은 MLOps 플랫폼에서 매우 중요한 부분입니다. 이 두 용어는 같은 의미로 사용될 수 있지만, 그 사이에는 차이가 있습니다. ML 모니터링과 통합 가시성 문서(https://marvelousmlops.substack.com/p/ml-monitoring-vs-ml-observability)를 확인해 보세요.


ML 시스템 통합 가시성의 경우, Prometheus와 Grafana의 조합이 가장 일반적으로 사용됩니다.

  • Prometheus 및 Grafana 마스터하기 과정(https://www.udemy.com/course/mastering-prometheus-and-grafana/?couponCode=24T4FS22124)

데이터 및 모델 드리프트와 같은 ML 관련 모니터링의 경우, 주요 클라우드 제공업체는 ML 제안에 내장된 자체 솔루션을 보유하고 있습니다. Evidently.ai 또는 NannyML과 같은 오픈 소스 솔루션도 있습니다.

  • 코스 제안: 머신 러닝 모니터링 개념(https://app.datacamp.com/learn/courses/machine-learning-monitoring-concepts), Python으로 머신 러닝 모니터링하기(https://app.datacamp.com/learn/courses/monitoring-machine-learning-in-python)


6. 코드로서의 인프라: 테라폼

코드형 인프라는 MLOps 프레임워크를 재현 가능하게 만드는 데 매우 중요합니다. Terraform은 가장 인기 있고 강력한 IaC 도구입니다. 모든 일반적인 클라우드 제공업체 및 플랫폼에서 작동합니다.

  • 코스 제안: 초보자를 위한 Terraform 코스(https://www.youtube.com/watch?v=SLB_c_ayRMo)

  • 짧은 동영상: Techworld의 Nana가 소개하는 8가지 Terraform 모범 사례(https://www.youtube.com/watch?v=gxPykhPxRW0&ab_channel=TechWorldwithNana)

  • 책 추천: Terraform: 시작과 실행, 3판 예브게니 브릭먼 저


출처: https://marvelousmlops.substack.com/p/mlops-roadmap-2024?r=1ttoeh&utm_campaign=post&utm_medium=web

MLOps roadmap 2024

Substack

MLOps roadmap 2024

다음 내용이 궁금하다면?

또는

이미 회원이신가요?

2024년 2월 21일 오전 10:37

 • 

저장 50조회 3,353

댓글 0

    함께 읽은 게시물

    가장 훌륭한 경비절감 방법은 ‘몰입’이다. 가장 훌륭한 생산성 향상 방법도 ‘몰입’이다. 이는 많은 경영학자들이 연구를 통해 증명한 사실이다.

    ... 더 보기

    [백진기 칼럼]그래 한번 미쳐보자?(110편)

    메디칼타임즈

    [백진기 칼럼]그래 한번 미쳐보자?(110편)

    '브랜드 스토리텔링'을 결코 만만하게 봐서는 안 되는 이유

    ... 더 보기

    Disney marketing director Angela Affinita on the art of brand storytelling in 2025

    The Drum

    Disney marketing director Angela Affinita on the art of brand storytelling in 2025

    SI 프로젝트 실패비율은 예전보다 줄어들었을까?

    필자는 SI 프로젝트를 수행하는 회사에서 30년 넘게 근무하고 있다. 그동안  프로젝트를 수행하는 기술과 도구는 비약적으로 발전했다. 가장 큰 발전은 의사소통 도구의 혁신이다. 휴대폰이 등장으로 전화 통화가 쉬워졌고, 이메일/메신저/화상회의 도구는 보편화되었다. 30년 전에는 휴대폰, 메일, 메신저가 없이 고객이나 프로젝트 팀원과 소통하려면 유선 전화기와 대면소통 외에는 방법이 없었다.

    ... 더 보기

    아하 모먼트가 아닌 아 모먼트

    ... 더 보기

    아하 모먼트가 아닌 아 모먼트

    Medium

    아하 모먼트가 아닌 아 모먼트

    한국투자파트너스는 지난해 27개 글로벌 기업에 총 1045억원을 투자했다. 특히 앤트로픽을 비롯해 주로 AI 관련 기업에 투자했다. 회사는 지난해 5월 팩토리얼 그로스 III LTD를 통해 xAI에 108억원을 투자했다. xAI는 2023년 일론 머스크가 설립한 거대언어모델(LLM) 개발 스타트업이다. 지난해 12월 xAI는 60억달러(약 8조7000억원) 규모 시리즈C 투자를 유치했다. 기업가치는 500억달러(약 72조6800억원)로 6개월 새 2배가 뛰었다.

    ... 더 보기

    thebell Free

    m.thebell.co.kr

    thebell Free

    조회 646


    나의 첫 멘토 이야기

    저의 첫 멘토는 하청 업체에서 고용한 프리랜서 개발자였습니다.

    ... 더 보기

     • 

    댓글 1 • 저장 11 • 조회 3,077