✔️MLOps 9

[MLOps] 1. Motivation for MLOps

link: https://ml-ops.org/content/motivation Why you Might Want to use Machine Learning. 왜 ML을 적용하고 싶은가? Statista Digital Economy Compass 2019,에 따르면 최근 트렌드는 Data driven 세상. 엄청난 기하급수적으로 증가하는 데이터가 모이는 세상인 것과 이렇게 모여진 데이터에서 insight를 찾아내는 rtificial Intelligence / Machine Learning / Data Science 가 증가한다는 것. 모든 ML pipeline은 model을 만드는데 필요한 모든 연산들의 set이다. 요약: 그래서 대체 MLOps가 뭔데? MLOps, as a DevOps extension..

MLOps 2024.04.09

Windows 11 WSL2 및 Ubuntu 22.04에서 GPU 활용 Docker 실행 환경 세팅

찾아본 대부분의 자료와 공식 문서가 영어로 되어있었기도 했고, 스위스 엔지니어에게 해당 방법을 알려줘야 했기 때문에 정리해 본 것이라 중간 중간 영어로 적힌 부분이 있다. Environment Ubuntu 22-04 혹은 Window WSL(Windows Subsystems for Linux) wsl 설치 방법 $ wsl --list --online $ wsl --install -d Ubuntu-22.04 Prerequisite Check Hardware 아래의 모든 작업을 진행하기 전에 정말 기본적이지만 GPU 하드웨어가 있는지, 또한 사용가능한 형태로 설치되어있는지 확인해야 한다. 시스템에 어떤 그래픽 카드가 설치되어있는지 확인하려면 다음과 같은 명령어를 사용한다. $ sudo lshw -C disp..

Dev/DevOps, Infra 2023.10.26

[MLOps] Data Management (data version control) - DVC

최근 회사에서 MLOps 의 필요성이 많이 대두되고 있어서 (ex. 연구시 AI model에 dependency가 있는 package들의 관리가 필요한데, 이를 개발팀에서 좀 도와줬으면 한다.. 등) 패스트캠퍼스의 강의 내용과 제가 이해한 바를 정리한 글입니다. 관련 내용과 실습한 code는 https://github.com/Gracechung-sw/mlops-practice 에서 확인하실 수 있습니다. Data Management에 있어서 강의 외에도 실제 실습에 도움이 많이 되었던 글은 MLOps Basics [Week 3]: Data Version Control - DVC 입니다. 아래 글에서 인용 박스 안에 적힌 내용은 강의가 아닌 실제 현업 경험 중 연관되어 생각난 것들을 적어둔 것입니다. In..

MLOps 2023.04.30

[Kubernetes] 쿠버네티스 Intro. 필요성, 구성, 동작 방식

대세는 쿠버네티스 강의와 Kubernetes와 Docker로 한 번에 끝내는 컨테이너 기반 MSA를 참고하여 공부한 바를 정리하였습니다. 1. 쿠버네티스 공부를 시작하는 이유 내가 해온 일 들 중 서비스 운영에 대해 고민했던 시기들을 그려본 것이다. Docker를 이용한 서비스 배포 과정에 CI/CD와 service alert 기능을 추가한 이후에도, 여러 서버에 container를 효과적으로 모니터링하고 관리하는데 어려움이 있었다. 예를 들면, 서버 health check는 정상이지만 그 안에 container가 지속적으로 down되는 문제가 발생했을 때 이를 알아차리기란 쉽지 않다. 그리고 많은 연산에 리소스가 들어가는 서비스의 경우 리소스를 효율적으로 관리하고 분배하도록 인프라를 직접 관리하는 것도..

Dev/DevOps, Infra 2022.03.04

[Lecture] Deploying Machine Learning Models in Production Week2 - 5. Batch Inference Scenarios, 6. Batch Processing with ETL

Batch Inference Scenarios 이번에는 Online inference가 아닌 Batch Inference에서의 model performance와 resoure requirements에 대해서 알아보았다. Batch Inference는 Prediction based on batch inference is when your ML model is used in a batch scoring job for a large number of data points where predictions are not required or not feasible to generate in real-time. 이런 경우에 사용된다. 그리고, Batch jobs for prediction are usually ge..

MLOps 2021.11.21

[Lecture] Deploying Machine Learning Models in Production Week2 - 3. Online Inference

머신러닝 모델을 만들면 Product에 모델을 배포하고, inference 요청에 대한 응답(모델의 예측값을 사용자에게 응답)을 할 수 있도록 모델 API를 제공해야 한다. 즉, model serving을 해야 한다. 어떤 식으로 모델을 배포할 수 있는지 소개하는 과정의 Week 2: Model Serving: Patterns and Infrastructure을 학습했고, 그중 3번째 주제인 Online Inference와 실습에 대해서 배운 것을 정리해 보았다. Online Inference inference방식으로는 batch inference와 online inference가 있다. batch inference는 말 그대로 데이터를 배치 단위로 인퍼런스 하는 것이다. 이러한 배치 단위의 작업들은 일..

MLOps 2021.11.21

[Lecture] Deploying Machine Learning Models in Production Week2 - 2. Scaling Infrastructure

머신러닝 모델을 만들면 Product에 모델을 배포하고, inference 요청에 대한 응답(모델의 예측값을 사용자에게 응답)을 할 수 있도록 모델 API를 제공해야 한다. 즉, model serving을 해야 한다. 어떤 식으로 모델을 배포하고 운영할 수 있는지 소개하는 과정의 Week 2: Model Serving: Patterns and Infrastructure - Scaling Infrastructure 내용에 대해서 배운 것을 정리해 보았다. Scaling Infrastructure Why Horizontal Over Vertical Scaling Benefit of elasticity: Shrink or growth no of nodes based on load, throughput, lat..

MLOps 2021.11.07

[Github, CI/CD] Github Actions self hosted runner with own GPUs

Github Actions self hosted runner with own GPUs Github Actions는 Gtihub을 기반으로 하는 CI/CD, 여러 개발 Workflow 자동화 툴이다. 그런데 사용하다 보면 Github Actions workflow를 Github-hosted runner에서만 실행시키는데 한계가 있는 경우가 있다. A GitHub-hosted runner is a virtual machine hosted by GitHub with the GitHub Actions runner application installed. 구체적으로 어떤 경우가 있을 수 있는지 'ML application을 위한 Workflow를 Github Actions로 실행하고자 할 때'를 예시로 살펴보자면..

Dev/DevOps, Infra 2021.10.10