* 머신러닝 모델의 안정적인 운영과 성공적인 CI/CD를 위한 MLOps 엔지니어링 노하우
* MLOps 포트폴리오 작성 Tip, MLOps 실무자의 인터뷰 수록
* 최신 내용 기반한 역자 노트 추가 및 소스 코드 리팩토링 반영
이 책은 MLOps와 DevOps의 개념을 종합적으로 이해하고, 깊이 있는 학습을 돕기 위해 다양한 실습을 포함하고 있습니다. 머신러닝 모델의 안정적인 운영을 위한 배포 방법과 AutoML, 컨테이너, 엣지 컴퓨팅, 모델 이식성 등 MLOps의 중요한 기술 영역을 다룹니다. 뿐만 아니라 AWS, 애저 환경, GCP 등 다양한 클라우드 플랫폼에서의 MLOps 경험을 쌓을 수 있도록 실습을 제공합니다. 저자의 실제 경험을 바탕으로 한 MLOps 사례 및 MLOps 실무자들의 인터뷰 내용도 소개하고 있습니다. 부록에서는 MLOps 구현 시 고려해야 할 사항과 MLOps 커리어 준비를 위한 인터뷰 질문 및 기술 포트폴리오에 필요한 작성 Tip도 제공하여 실무에 쉽게 적용할 수 있도록 도와줍니다.
Contents
CHAPTER 1 MLOps 세상으로 초대
_1.1 머신러닝 엔지니어와 MLOps의 부상
_1.2 MLOps란?
_1.3 DevOps와 MLOps
_1.4 MLOps 욕구 단계 이론
__1.4.1 DevOps 구현
__1.4.2 깃허브 액션을 사용하여 지속적 통합 구성하기
__1.4.3 DataOps와 데이터 엔지니어링
__1.4.4 플랫폼 자동화
__1.4.5 MLOps
_1.5 마치며
연습해보기
생각해보기
CHAPTER 2 MLOps를 시작하기 위한 기본 개념
_2.1 배시와 리눅스 커맨드 라인
_2.2 클라우드 셸 개발 환경
_2.3 배시 셸과 명령어
__2.3.1 파일 목록
__2.3.2 실행 명령
__2.3.3 파일 탐색
__2.3.4 셸 입출력
__2.3.5 셸 설정
__2.3.6 셸 스크립트 작성
_2.4 클라우드 컴퓨팅 기반과 구성 요소
_2.5 클라우드 컴퓨팅 시작하기
_2.6 파이썬 벼락치기
_2.7 미니멀리스트를 위한 파이썬 튜토리얼
_2.8 프로그래머를 위한 수학 벼락치기
__2.8.1 기술 통계학과 정규분포
__2.8.2 최적화
__[역자 노트]
_2.9 머신러닝의 핵심 개념
_2.10 데이터 과학 해보기
_2.11 간단한 파이프라인 밑바닥부터 작성하기
_2.12 마치며
연습해보기
생각해보기
CHAPTER 3 컨테이너와 엣지 디바이스를 위한 MLOps
_3.1 컨테이너
__3.1.1 컨테이너 런타임
__3.1.2 컨테이너 생성하기
__3.1.3 컨테이너 실행하기
__3.1.4 컨테이너 모범 사례
__3.1.5 HTTP로 모델 서빙하기
_3.2 엣지 디바이스
__3.2.1 구글 코랄
__3.2.2 애저 퍼셉트
__3.2.3 텐서플로 허브
__3.2.4 구글 코랄 엣지 TPU 컴파일러
_3.3 완전 관리형 머신러닝 시스템을 위한 컨테이너
__3.3.1 MLOps 컨테이너 거래하기
__3.3.2 다양하게 활용되는 컨테이너
_3.4 마치며
연습해보기
생각해보기
CHAPTER 4 머신러닝 애플리케이션에 지속적 배포를 적용하기
_4.1 머신러닝 모델 패키징
_4.2 머신러닝 모델의 지속적 배포를 위한 코드형 인프라
_4.3 클라우드 파이프라인 사용하기
__4.3.1 모델 배포 제어하기
__4.3.2 모델 배포를 위한 테스팅 전략
_4.4 마치며
연습해보기
생각해보기
CHAPTER 5 AutoML과 KaizenML
_5.1 AutoML
__5.1.1 MLOps 산업 혁명
__5.1.2 AutoML vs KaizenML
__5.1.3 피처 스토어
_5.2 애플 생태계
__5.2.1 애플의 AutoML: Create ML
__5.2.2 애플의 Core ML
_5.3 구글의 AutoML과 엣지 컴퓨터 비전
_5.4 애저의 AutoML
_5.5 AWS AutoML
_5.6 오픈 소스 AutoML
__5.6.1 Ludwig
__5.6.2 FLAML
_5.7 모델 설명력
_5.8 마치며
연습해보기
생각해보기
CHAPTER 6 모니터링과 로깅
_6.1 클라우드 MLOps와 관찰가능성
__[역자 노트]
_6.2 로깅 기초
_6.3 파이썬에서 로깅 실습하기
__[역자 노트]
__6.3.1 로그 수준 설정하기
__6.3.2 여러 애플리케이션을 동시에 로깅하기
_6.4 모니터링과 관찰가능성
__6.4.1 모델 모니터링의 기초
__6.4.2 AWS 세이지메이커에서 드리프트 모니터링하기
_6.5 애저 머신러닝에서 드리프트 모니터링하기
_6.6 마치며
연습해보기
생각해보기
CHAPTER 7 AWS를 이용한 MLOps
_7.1 AWS에 입문하기
__7.1.1 AWS 제품 사용해보기
__7.1.2 AWS와 MLOps
_7.2 AWS를 이용한 MLOps 레시피
__7.2.1 명령행 인터페이스 도구
__7.2.2 플라스크 마이크로서비스
_7.3 AWS 람다 레시피
__7.3.1 AWS 람다-SAM: 로컬 환경에서 사용하기
__7.3.2 AWS 람다-SAM: 컨테이너화하여 배포하기
_7.4 현실의 문제를 해결하기 위한 AWS 머신러닝 제품과 조언
__[인터뷰] 스포츠 SNS 서비스의 사례
__[인터뷰] AWS 머신러닝 기술 전도사 줄리앙의 커리어 조언언
_7.5 마치며
연습해보기
생각해보기
CHAPTER 8 애저 환경과 MLOps
_8.1 애저 CLI와 파이썬 SDK
_8.2 인증
__8.2.1 서비스 주체
__8.2.2 API 서비스 인증
_8.3 컴퓨팅 인스턴스
_8.4 배포
__8.4.1 모델 등록
__8.4.2 데이터셋 버전 관리
__[역자 노트]
_8.5 컴퓨팅 클러스터에 모델 배포하기
__8.5.1 클러스터 구성하기
__8.5.2 모델 배포하기
_8.6 배포 문제 해결하기
__8.6.1 로그 검색하기
__8.6.2 애플리케이션 인사이트
__8.6.3 로컬 환경에서의 디버깅
_8.7 애저 머신러닝 파이프라인
__8.7.1 퍼블리싱 파이프라인
__8.7.2 애저 머신러닝 디자이너
_8.8 머신러닝 생애 주기
_8.9 마치며
연습해보기
생각해보기
CHAPTER 9 구글 클라우드 플랫폼과 쿠버네티스
_9.1 구글 클라우드 플랫폼 둘러보기
__9.1.1 지속적 통합과 지속적 배포
__9.1.2 hello world 쿠버네티스
__9.1.3 클라우드 네이티브 데이터베이스 선택과 설계
_9.2 구글 클라우드 플랫폼에서의 DataOps
_9.3 머신러닝 모델 운영
_9.4 마치며
연습해보기
생각해보기
CHAPTER 10 머신러닝 상호운용성
_10.1 상호운용성이 중요한 이유
_10.2 ONNX: Open Neural Network Exchange
__10.2.1 ONNX Model Zoo
__10.2.2 파이토치를 ONNX로 변환하기
__10.2.3 텐서플로를 ONNX로 변환하기
__10.2.4 애저에서 ONNX 모델 배포
_10.3 애플의 Core ML과 ONNX
_10.4 엣지 통합
_10.5 마치며
연습해보기
생각해보기
CHAPTER 11 MLOps 명령줄 도구와 마이크로서비스 구축
_11.1 파이썬 패키징
_11.2 Requirements 파일
_11.3 명령줄 도구
__11.3.1 데이터셋 린터 생성
__11.3.2 명령줄 도구 모듈화
_11.4 마이크로서비스
__11.4.1 서버리스 기능 만들기
__11.4.2 클라우드 기능 인증
__11.4.3 클라우드 기반 명령줄 인터페이스 구축
_11.5 머신러닝 명령줄 인터페이스 워크플로
_11.6 마치며
연습해보기
생각해보기
CHAPTER 12 MLOps 실사례 연구
_12.1 머신러닝에서 무지함이 주는 뜻밖의 이점
_12.2 스포츠 소셜 네트워크의 MLOps 프로젝트
__12.2.1 기계적인 반복 작업: 데이터 라벨링
__12.2.2 인플루언서 등급
__12.2.3 인공지능 프로덕트
_12.3 현실 vs 완벽한 기술
_12.4 MLOps의 중요한 과제
__12.4.1 윤리적 문제와 의도치 않은 결과
__12.4.2 운영 능력의 부족
__12.4.3 기술력에 집중할 것인가, 비즈니스에 집중할 것인가
__[인터뷰] MLOps 실무자 피에로 몰리노
__[인터뷰] MLOps 실무자 프란체스카 라제리
_12.5 MLOps 구현을 위한 마지막 권장 사항
__12.5.1 데이터 거버넌스와 사이버보안
__12.5.2 MLOps 구축 시 자주 언급되는 개념과 도구들
_12.6 마치며
연습해보기
생각해보기
부록 A. 기술 자격증
부록 B. MLOps를 위한 기술 포트폴리오 작성 Tip
Author
노아 기프트,알프레도 데자,이장후,이일섭,서기원
UC 데이비스 경영대학원 MSBA 프로그램의 강사 겸 컨설턴트인 노아 기프트는 CTO, 총괄 관리자, 컨설팅 CTO, 클라우드 설계자 등 비즈니스 역할을 담당해 왔다. 프래그매틱 에이아이랩스(Pragmatic AI Labs)의 설립자로서, 머신러닝과 클라우드 아키텍처에 대해 스타트업, 기타 회사들과 협업한다. 파이썬 소프트웨어 재단 펠로우(Python Software Foundation Fellow)로, 머신러닝 분야에 관한 AWS SME(Subject Matter Expert)이며, 클라우드 머신러닝과 데브옵스(DevOps)에 관한 책을 출간했다.
UC 데이비스 경영대학원 MSBA 프로그램의 강사 겸 컨설턴트인 노아 기프트는 CTO, 총괄 관리자, 컨설팅 CTO, 클라우드 설계자 등 비즈니스 역할을 담당해 왔다. 프래그매틱 에이아이랩스(Pragmatic AI Labs)의 설립자로서, 머신러닝과 클라우드 아키텍처에 대해 스타트업, 기타 회사들과 협업한다. 파이썬 소프트웨어 재단 펠로우(Python Software Foundation Fellow)로, 머신러닝 분야에 관한 AWS SME(Subject Matter Expert)이며, 클라우드 머신러닝과 데브옵스(DevOps)에 관한 책을 출간했다.