메뉴 바로가기 검색 및 카테고리 바로가기 본문 바로가기

한빛출판네트워크

한빛랩스 - 지식에 가능성을 머지하다 / 강의 콘텐츠 무료로 수강하시고 피드백을 남겨주세요. ▶︎

MLOps 실전 가이드

DevOps와 MLOps의 이론과 실습부터 클라우드 컴퓨팅, AutoML, 엣지 컴퓨팅까지

한빛미디어

번역서

판매중

  • 저자 : 노아 기프트 , 알프레도 데자
  • 번역 : 이장후 , 이일섭 , 서기원 , 맹윤호(감수)
  • 출간 : 2023-07-07
  • 페이지 : 496 쪽
  • ISBN : 9791169211215
  • eISBN : 9791169217064
  • 물류코드 :11121
  • 초급 초중급 중급 중고급 고급
4.7점 (27명)
좋아요 : 10

머신러닝 모델의 안정적인 운영과 성공적인 CI/CD를 위한 MLOps 엔지니어링 노하우

* MLOps 포트폴리오 작성 Tip, MLOps 실무자의 인터뷰 수록

* 최신 내용 기반한 역자 노트 추가 및 소스 코드 리팩토링 반영 

 

이 책은 MLOps와 DevOps의 개념을 종합적으로 이해하고, 깊이 있는 학습을 돕기 위해 다양한 실습을 포함하고 있습니다. 머신러닝 모델의 안정적인 운영을 위한 배포 방법과 AutoML, 컨테이너, 엣지 컴퓨팅, 모델 이식성 등 MLOps의 중요한 기술 영역을 다룹니다. 뿐만 아니라 AWS, 애저 환경, GCP 등 다양한 클라우드 플랫폼에서의 MLOps 경험을 쌓을 수 있도록 실습을 제공합니다. 저자의 실제 경험을 바탕으로 한 MLOps 사례 및 MLOps 실무자들의 인터뷰 내용도 소개하고 있습니다. 부록에서는 MLOps 구현 시 고려해야 할 사항과 MLOps 커리어 준비를 위한 인터뷰 질문 및 기술 포트폴리오에 필요한 작성 Tip도 제공하여 실무에 쉽게 적용할 수 있도록 도와줍니다. 

 

MLOps 실전 가이드_상세페이지(700).jpg

노아 기프트 저자

노아 기프트

Pragmatic A.I. Labs의 창업가다. 현재 몇몇 주요 대학의 학생 및 교수진을 대상으로 머신러닝 및 클라우드 아키텍처 컨설팅을 제공하고 있다. 대학원 기계 학습, MLOps, AI, 데이터 과학 과정을 가르치고 설계한다.

알프레도 데자 저자

알프레도 데자

열정적인 소프트웨어 엔지니어이자 연설가 겸 작가다. 20년 정도 DevOps와 소프트웨어 엔지니어링 경험을 지닌 전직 올림픽 선수이기도 하다. 현재 머신러닝 엔지니어링을 가르치고 있으며 소프트웨어 개발, 개인 프로젝트, 운동에 대해 전 세계를 돌아다니며 강연하고 있다. DevOps와 파이썬에 관한 책을 여러 권 저술했으며 인프라, 테스트, 강력한 개발 사례에 대한 자신의 견해를 계속 공유하고 있다.

이장후 역자

이장후

대학교에서 컴퓨터공학을 공부하다가 갑자기 휴학 후 창업에 도전해  칵테일 바를 열어보기도 하고, 자율주행 킥보드를 만드는 일에 1년 6개월간 뛰어들었다가 최근에는 AI MSP를 다루는 회사에서 데이터 사이언티스트로 일하기도 했다. 이 소개를 쓰는 순간에는 학생 신분으로 프랑스에서 경험을 쌓고 있다.

살아가며 배우고 느낀 것들을 광적으로 쓰고 기록하며 롤모델의 이름을 딴 개인 블로그 다빈치 작업실(https://davincijang.space)에 포스팅하고 있다.

이일섭 역자

이일섭

국내 카드사 AI 팀에서 근무하고 있으며 산업공학과 박사과정을 통해 생성형 AI를 연구하고 있습니다. 커뮤니티 ‘데이터야놀자’와 AI 교육봉사 단체 ‘AI야, 놀자’에서 활동하고 있습니다. 『데이터 품질의 비밀』(디코딩, 2023)과 『MLOps 실전 가이드』(한빛미디어, 2023), 『GPT-4를 활용한 인공지능 앱 개발』(한빛미디어, 2023 ), 『AI 시대의 프로그래머』(한빛미디어, 2024)를 번역했습니다.

 

서기원 역자

서기원

GS 리테일에서 머신러닝 엔지니어 및 데이터 플랫폼 엔지니어로 근무하고 있다. 2022년 하반기에는 GS 리테일 우수사원상을 수상하였다. 클라우드 기반 MLOps 파이프라인 설계 및 구현에 전문성을 갖추고 있으며, 효율적이고 현대적인 아키텍처를 구축하는 데 관심이 있다.

최근에는 데이터 분석 플랫폼의 고도화와 기술 지원을 담당하며 아키텍처 고도화, IaC, 데이터 저장 정책 및 메커니즘, 비용 최적화, 모니터링, 분석 환경 정책 등 다양한 영역의 업무를 수행하고 있다.

2018년 IITP의 지원을 받아 퍼듀 대학교에서 빅데이터와 관련된 연구와 프로젝트를 수행하면서 데이터에 대한 관심을 키웠다.

맹윤호[감수] 역자

맹윤호[감수]

이화여대 신산업융합대학 겸임교수로 데이터 분석 및 AI 강의를 하고 있으며, 카논그룹의 CTO로 재직  중이다. 

이전에는 IBM의 Data&AI 팀에서 엔지니어로 근무했으며, 이후 카카오벤처스 패밀리사인 1z Labs를 공동창업한 후, 지분을 매각한 바 있다. 연세대학교에서 데이터 분석 전공으로 석사 과정을 졸업하고 박사 과정을 수료했다. 

SK C&C, KISTI, NRF, DBpia 등에서 프로젝트를 진행하였으며 Apache Zeppelin, Qiskit, KoGPT-2 등 오픈소스 프로젝트에 기여했다. 

삼성, 현대, LG, 딜로이트 등 기업을 대상으로 강연하고 연세대학교, 이화여대, 중앙대학교, 동덕여대, 상명대학교, 순천대학교 등에서도 강연했다. 참여 도서로는 『머신러닝 디자인 패턴』(한빛미디어, 2021), 『Do it 강화 학습 입문』(이지스퍼블리싱, 2021), 『코딩 진로』(호모루덴스, 2021), 『초소형 머신러닝 TINYML』(한빛미디어, 2020), 『쉽게 배우는 AWS AI 서비스』(한빛미디어, 2022), 『하이퍼레저 블록체인 개발』(한빛미디어, 2019), 『블록체인의 정석』(지앤선, 2019) 등이 있다. 깃허브에서 @YUNHO0130으로 활동하고 기술 블로그와 유튜브 채널을 운영하고 있다.

 

 

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

MLOps는 AI 시대에 맞춰 진화한 DevOps로 알려져 있습니다. 간단히 말해 MLOps는 DevOps 방법론을 활용하여 머신러닝을 자동화하는 프로세스라고 할 수 있습니다. DevOps의 핵심 철학 중 하나인 자동화에 대한 중요성을 강조하는 측면에서 MLOps는 DevOps의 계보를 잇는 것입니다. 

『MLOps 실전 가이드』는 MLOps와 DevOps의 이론뿐만 아니라 머신러닝 모델을 실제 운영 환경에서 배포하고 관리하는 방법과 자동화에 필수적 요소인 지속적인 통합(CI)와 지속적인 배포(CD), 더 나아가 지속적인 개선이라는 의미를 가진 카이젠(Kazien) 개념까지 포괄적으로 다룹니다. 더불어 AWS, Azure, Google Cloud Platform과 같은 플랫폼에서 MLOps를 구현하는 방법과 역자가 경험했던 MLOps 실제 사례도 포함하고 있습니다. 

이 책은 MLOps에 대한 개념을 통찰력 있게 설명하고자 합니다. ChatGPT를 활용한 번역이 아닌 역자진이 원문을 직접 번역하고, 소스 코드를 리팩토링하여 사례별 Hands-on 실습 코드를 제공합니다. 또한 본문에 등장하는 ‘역자 노트’는 역자가 최신 내용을 참고하여 직접 설명을 추가해 독자들이 더 잘 이해할 수 있도록 하였습니다. 각 장이 끝날 때마다 등장하는 ‘연습해보기’와 ‘생각해보기’를 통해 학습한 내용을 복습하고 비판적인 사고를 가지며 MLOps의 다양한 인사이트를 얻을 수 있습니다.

[나의 한줄 추천사]

- 모델을 가지고 지속 가능한 서비스를 만들려면 이 책을 보라.

[책 추천 이유]

- 한번 모델을 만들게 되면 시간이 지나면 정확도가 떨어지게 된다. 왜냐하면 입력 데이터들이 변화하기 때문이다. 따라서 한번 만들면 끝나는 프로그램과는 다르게, 머신러닝을 통해서 만든 모델은 재학습이 필요로 하는데 이러한 선순환의 구조를 만드는게 MLOps의 핵심이다. 이러한 MLOps A-Z 까지 빠르게 개념을 잡을 수 있도록 해준다.

[내가 찾고자 했던 질문들]

  1. MLOps 구현하기 위한 Tips

  • 작은 단계부터 시작한다.

  • 클라우드를 활용한다.

  • 함께 협업하는 팀원이 클라우드 플랫폼 및 머신러닝에 대한 전문성을 갖도록 자료를 공유하며, 같이 공부 한다.

  • 프로젝트 시작부터 자동화를 염두하고 구축한다. 초기 단계부터 자동화를 고려하여야 추후에도 지속적인 배포와 통합이 가능하다.

  • 파이프라인을 지속적으로 개선하는 활동을 한다. 

  • 간단한 도구로 구현할 수 있는 비지니스 문제는 딥러닝을 이용하지 않아도 된다.​

2. MLOps 생산성 과 보안 개선할 수 있는 Tips

  • 최소 권한의 원칙(PLP : Principle of Least Privilege) 적용한다.

  • 저장 데이터 및 전송 중인 데이터를 암호화한다.

  • 자동화되지 않은 시스템은 안전하지 않다고 가정한다.

  • 공통된 보안 모델이 있는 클라우드 플랫폼을 사용한다.

  • 분기별로 아키텍처 및 보안 시스템을 정기적으로 감사한다.

  • 조직 구성원들에게 새로운 기술 및 모범 사례에 대해 분기별 또는 연간으로 교육한다.

​3. 머신러닝 엔지니어링 단계

  • DevOps -> 데이터 자동화 -> 플랫폼 자동화 -> MLOps

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 
이 책은 머신러닝 오퍼레이션(MLOps) 분야에 관한 실전 입문 도서이다. 
 
MLOps는 머신러닝 모델의 실전 적용과 관리를 위한 필수적인 방법으로, 모델의 지속적인 개선과 자동화된 배포, 운영을 통해 효율적으로 모델을 활용할 수 있게 하기 위해서 필요하다.
 
또한 클라우드 컴퓨팅과 연계하여 확장성과 안정성을 보장하며, 모델의 버전 관리와 추적 기능으로 모델의 변경 사항을 투명하게 관리할 수 있다는 장점이 있다.
 
MLOps는 DevOps의 하나라고 볼 수도 있다. DevOps 방법론을 활용해 머신러닝을 자동화하는 프로세스니까.
 
이 책은 MLOps와 DevOps의 이론을 비롯해 실제로 머신러닝 모델을 운영 환경에서 배포하고 관리하는 방법, 지속적인 통합(CI), 지속적인 배포(CD)뿐 아니라 카이젠(Kaizen) 개념까지 포괄적으로 다룬다.
 
AWS, Azure, Google Cloud Platform과 같은 플랫폼에서 MLOps를 구현하는 방법과 역자가 실제로 경험한 MLOps 사례도 함께 제공한다.
 
이 책의 장점은 MLOps의 모든 내용을 한 권으로 배울 수 있다는 것이다.
 
그리고 단점 역시 MLOps의 모든 내용을 한 권으로 배운다는데 기인한다. 
 
모델의 버전 관리, 자동화된 빌드와 배포, 모니터링, 로깅, 테스트 등 다루는 범위와 내용이 많은 만큼 각각에 대한 깊이는 충분하다고는 말하기 어렵다. 
 
초판이 출간된 시점보다 시간이 어느 정도 지났기 때문에, 일부 클라우드 플랫폼의 내용도 지금과 약간 다르다. 
 
다만 읽고 이해해서 따라하는데는 큰 문제가 없다. 
 
일부 본문에는 '역자 노트'를 통해 번역자들이 최신 정보를 참고하여 설명을 보완하기도 했다.
 
이 책은 헤비하지 않은 분량에 이론과 실습을 다 담으려고 노력했다. 
 
그만큼 실제적으로 배워갈 수 있는 부분이 많다. 
 
머신러닝 모델을 어떻게 통합적으로 관리하고 발전시킬 수 있는 지를 전체적으로 배우고 싶다면 추천할만한 도서이다. 
 
"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."
 


MLOps를 실전에 도입하기 위해서 필요한 서적들이 

사실 시중에 얼마 없어서 한글로 된 정보를 찾기 힘들었는데 이를 해결해주는 책입니다.

나비책.. 일명 MLOps 도입 가이드 후에 넘어오시는 편이 좋을 것 같아요. 

저는 약간 어려웠습니다.. 

'가이드' 라는 제목이 붙은 만큼 큰 흐름을 잡을 수 있고, 마지막 부분에 실무에서 적용한 사례들에 대해서 재미있게 읽었습니다. 덜 딱딱해서요.

엔지니어링에 대해서 좀 더 공부해야겠다고 생각하게 해준 책입니다...

 

한빛미디어의 'MLOps 실전가이드'는 최신 기술과 거대 언어 모델인 GPT-4와 Google의 Gemini 같은 발전과 함께 MLOps 분야에 대한 내용을 다루고 있습니다. 이 책은 O'Reilly의 ‘Practical MLOps’의 번역본이지만, 번역이 어색하지 않고 자연스러워서 읽기에 불편함이 없으며, 실습 위주의 내용과 다양한 클라우드 플랫폼(GCP, AWS, Azure)에서의 예제를 포함하여 매우 유익한 내용을 제공하고 있습니다.

O'Reilly 출판사의 관련 책들은 때때로 번역이 어색하고 이해하기 어려운 부분이 있다는 편견이 있습니다. 그러나 'MLOps 실전가이드'는 상대적으로 상세한 내용으로 구성되어 있어서 어려운 점이 있더라도 열심히 읽어보면 내용을 충분히 이해할 수 있습니다. 책은 어려운 점이 있더라도 필요한 부분만 빠르게 찾아서 읽기에도 좋은 구성을 가지고 있습니다.

각 장마다 연습해보기와 생각해보기 란이 있는데, 이는 답이 주어지지 않지만 각 챕터의 내용을 심화하는 데 도움을 줍니다. 이러한 실습과 고민의 기회를 통해 독자들은 학습을 더욱 심도 있게 진행할 수 있습니다.

'MLOps 실전가이드'는 최신 기술과 다양한 클라우드 플랫폼에서의 예제를 바탕으로 MLOps에 대한 이해를 쉽게 할 수 있도록 하며, 데이터 사이언티스트들에게 매우 유익한 책으로 평가됩니다.

 

『MLOps 실전 가이드』는 MLOps와 DevOps의 이론뿐만 아니라 머신러닝 모델을 실제 운영 환경에서 배포하고 관리하는 방법과, 자동화에 필수적인 요소인 지속적인 통합(CI)와 지속적인 배포(CD)를 포괄적으로 다룬다.

 

또한, 이 책은 AWS, Azure, Google Cloud Platform과 같은 다양한 플랫폼에서 MLOps를 구현하는 방법과 역자가 실제 경험한 MLOps 사례도 다루고 있어서 참고할 부분이 많다.

 

현재 머신러닝 업무를 하면서, MLOps와 관련된 접근법이 필요했는데,

이 책을 참고하여 업무에 적용해 볼 수 있기를 기대한다.

 

 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

오늘 리뷰할 책은 [MLOps 실전 가이드] 입니다.

 

 

 

 

https://www.hanbit.co.kr/store/books/look.php?p_code=B9385341956

표지에 있는 동물이 달마시안 같은데 점박이 무늬가 좀 작아서 아닌듯 한데...책에 달마시안이라고 나오네요.

 

표지 IMG_20230723_202036.jpg

 

 

 

최근에 AutoML에 대한 웨비나를 들은적도 있는데 책도 리뷰하게 되었으니 묘한 인연이네요.

그런데 웨비나에서 다룬 내용은 책에서 나오는 내용과는 겹치는 부분이 별로 없었네요.

어쨌든... 웨비나를 들을때도 그랬지만 이 책도 초급자용은 아닙니다.

머신러닝/딥러닝에 대한 지식이 어느 정도 있어야 하며,

출판사 사이트에도 초중급용으로 나와 있네요.

머신러닝/딥러닝에 대한 공부도 좀 해봤지만 역시나 이 책을 보는건 쉽지 않았네요.

곳곳에 나오는 어려운 수학/통계 관련한 내용들과 수식, 챠트 등등...

그나마 이제는 이해는 못하더라도 "아~, 전에 본적이 있네" 요정도로 만족 합니다 ㅋ

책 초반에는 역시나 MLOps에 대한 기본 지식들을 주로 설명합니다.

DevOps나 다른 책에서 많이 봤던 내용들(컨테이너)도 조금씩 나오고...

엣지 디바이스에 대한 내용이 있는 부분도 좋았습니다.

 

아래 그림이 가장 간단한 다이어그램일듯. 더 자세한 그림들도 나오긴 합니다.

 

간단 다이어그램.jpg

 

 

 

저는 특히 AutoML에 대해 관심 있었는데 책에서는 간단하게만 나와 있어서 조금 아쉬웠네요.

 

그래도 KaizenML 이라는 것에 대한 비교 설명은 좋았습니다. KaizenML 은 이번에 처음 알게 되었네요.

 

카이저 IMG_20230723_202137 (1).jpg

 

 

 

이 책은 특히 클라우드 3사에 대한 내용도 많이 다루고 있어서, 클라우드 사용자들에게는 좋겠네요.

저도 가끔 개인 프로젝트나 공부하느라 클라우드를 사용중인데 나중에 클라우드에서 해봐야겠습니다.

AWS에 대한 부분을 봤더니만 제가 대부분 사용해본 적이 없는 서비스들에 대한 설명이 간단하게만 나와 있네요.

이거 해볼려면 나중에 따로 공부를 많이 해봐야 할거 같습니다.

 

구글 빅쿼리도 공부 하느라 가끔 사용해보곤 했는데 MLOps 와의 워크플로를 아래처럼 그림으로 잘 나타내고 있습니다.

 

빅쿼리 IMG_20230723_202510 (1).jpg

 

 

 

책은 500페이지가 조금 안되서 분량도 적당해 보이고 번역도 괜찮은듯 합니다.

아마 현업에 직접 다루는 분들이 번역을 해서 그런가?

인쇄도 컬러가 아니라서 좀 아쉽지만 나름 깔끔하고 좋습니다.

특히 MLOps 관련한 많은 부분을 담으려고 노력한거로 보이며 다양한 도구들에 대한 언급도 있습니다.

초보자들은 책 내용의 대부분이 이해가 안갈거라 예상되기에,

자신에게 맞는 책인지 확인 후에 보면 좋겠네요.

MLOps에 대한 책이 많지는 않기에 관련 업무를 하시는 분들에게는 좋은 책이 될 것입니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

 

 

 

 

 

 

 

 

 

직업이 직업인지라 MLOps는 물론 여러 가지 인프라, 플랫폼에 대한 책은 꽤 읽은 편이다. 이 책만큼 수다스럽다고 느껴지는 책은 언뜻 기억나지가 않는다. 아래에 옮겨둔 목차를 보아도 알 수 있듯이 MLOps 엔지니어가 능숙하길 기대 받는 영역을 모두 다루었다고 해도 과언이 아니다. 코세라의 MLOps 강좌보다 많은 얘기를 한다. 현장은 코세라에서 다루고 싶어도 그러지 못할 정도로 난장판이기 때문이다.


난장판을 헤쳐왔을 저자들은 하고 싶은 말이 참 많아 보인다. 때문에 MLOps를 해볼까 하는 3년차 이내 엔지니어는 이 책을 보고 장벽을 많이 느낄 듯하다. 출간 전에 이 책을 읽은 베타리더들도 그런 걱정을 해서였는지 광범위하고 어렵게 느껴질 수 있겠지만 다양한 인사이트를 얻을 수 있다거나 다이빙 포인트를 잘 안내한다며 추천하고 있다. 이런 저런 AI 프로젝트를 벌이고 운영했던 경험을 비춰 보았을 때에 이 책이 이야기하는 주제는 2023년 기준 MLOps 기술의 합집합에 가깝다고 본다. 내가 무엇을 모르는지 자각하는 도구로 활용하길 바란다. 더불어 너무 걱정하지 않아도 좋을 게, 이 책의 저자는 두 명이고 모두 말이 많은 직업을 가졌다. 저자들의 해박함에 기가 죽을 필요는 없다. 저걸 한가하게 혼자서 다 하게 하는 조직은 없다.


소소하게 이 책을 소화할 팁을 더해보고자 한다. 쿠버네티스를 마스터하고 이 책을 볼 필요는 없지만 ssh가 뭔지는 알고 도커가 뭔지는 알아야 시작이 가능하다. ONNX가 뭔지 모르면 곤란하다. 어디 블로그를 통하든 뭘 하든 텐서플로나 파이토치로 모델을 만들어 학습하고 API를 띄우는 예제는 실행하며 대략적은 구조는 알아야 이 책을 훑어보는 게 가능하다. Google Colab으로도 할 수 있는 범위다. 이 정도를 할 줄 알면 무슨 얘기인지 도저히 이해가 가지 않는 용어들이 나와도 일단 한 번 완독하는 게 좋겠다. 양산형 인공지능 도서들과는 달리 저자들이 한두 달만에 익힌 경험을 책으로 옮긴 게 아니므로 한번에 이해가 가지 않는 게 당연하다. 회사 자원을 잘 써서 실습을 꼭 해야 자기 것이 되니 눈치 잘 보면서 꼭 클라우드에서 돌려보길 바란다.


안타깝게도 학생은 클라우드 환경에서 실습하기가 꽤 힘들다. 웹 서버 좀 돌려보기와는 차원이 다르게 돈이 나간다. 퍼블릭 클라우드 계정을 계속 만들어 쓰든 어떻게든 무료 포인트를 잘 받아서 일부라도 돌려보면 도움이 크게 되겠다. 취업을 위해서 이걸 다 해내려고 들지는 않는 게 좋겠다. 정말 불가능하다고 단언한다. 왜 해야 하는지 모르기 때문이다. 행여 주니어에게 MLOps 전반적으로 능숙하길 바라는 정신 나간 조직은 피해야 한다. 학생은 앞서 얘기한 것에 이어서 MLflow, BentoML에 Yatai까지만 돌려볼 줄 알아도 사랑 받을 만하다. MLOps도 좋지만 리눅스 OS, 리눅스로 다루는 네트워크, 도커 기술에 친숙해지는 게 더 우선이다. 그걸 모르는 조직 역시 당장은 급해도 피하는 게 낫다. 건투를 빈다.

들어가며

무엇보다 이책은 공동저자인 '알프레도 데자'의 이력이 눈길을 끕니다.

올림픽 출전 경험이 있는 운동선수가 '정보통신기술' 가운데서도 최첨단에 있는 MLOps에 대한 책을 썼다는 점이 매우 큰 자극을 주었습니다.

 

이 책의 장점은 무엇보다 평이하다는 겁니다.

알프레도 레자의 경험에서 이야기가 시작되는데 'MLOps'가 두렵지 않다며 '스타트렉'으로 이야기를 시작합니다.

 

특히 이 책의 장점은 '역자노트'가 들어 있다는 점인데, '번역'이 '제2의 창작'이란 이야기에 매우 잘 어울리는 책입니다.

 

 

또한 '알프레도 레자'의 역할인지는 모르겠으나, 초보자들에게도 도움을 주는 글들이 군데군데 나타납니다.

MLOps를 다룰 정도면 파이썬에는 어느 정도 마스터를 했을 거라고 생각하기 쉬운데, 초보들에게도 친절하게 설명하는 글이 매우 꼼꼼하게 드러나 있습니다.

 

 

무엇보다도 이 책의 장점은 깃허브를 잘 활용해서 직접 확인해볼 수 있게 한다는 점입니다.

 

원작자의 깃허브

사이트 주소: paiml/practical-mlops-book: [Book-2021] Practical MLOps O'Reilly Book (github.com)

 

GitHub - paiml/practical-mlops-book: [Book-2021] Practical MLOps O'Reilly Book

[Book-2021] Practical MLOps O'Reilly Book. Contribute to paiml/practical-mlops-book development by creating an account on GitHub.

github.com

심지어 역자가 운영하는 깃허브

번역을 예술적인 프로젝트로 승화시켜 주었습니다.

사이트 주소: ProtossDragoon/practical-mlops: O'Reilly 『MLOps 실전 가이드』 소스코드 길라잡이 (github.com)

 

GitHub - ProtossDragoon/practical-mlops: O'Reilly 『MLOps 실전 가이드』 소스코드 길라잡이

O'Reilly 『MLOps 실전 가이드』 소스코드 길라잡이. Contribute to ProtossDragoon/practical-mlops development by creating an account on GitHub.

github.com

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

최근들어서 관심있게 살펴보는 주제가 여러개 있는데, 그 중 하나가 MLOps이다. 개인적인 생각으로는 MLOps는 뭔가 AI의 이론적인 내용과 관련이 있다기보다는 조금 시스템적으로 이를 어떻게 처리하냐에 대한 내용을 주로 다루는 듯 하다. 사실 개인적으로 관심을 가지게 된 이유는 아무래도 내가 만든 모델을 실제 환경에 적용하는데 있어서 고려해야 될 부분이 한 두개가 아니라는 것을 느끼고 있기 때문이다. 단순히 책이나 어디에 나와있는 예제처럼 단순히 1회성에만 그치는 것이 아니라 실제 모델을 적용하려면, 지속적으로 모델을 학습하면서 성능 개선도 해야 되고, 내가 만든 모델을 언제 어떻게 배포해야 되는지에 대해서고 고민을 해야 된다. 아무리 리소스가 충분하고, 뛰어난 알고리즘이 있다고 하더라도, 뭔가 체계적인 프로세스가 정립되어 있지 않는다면 모델을 실제 환경에 적용한다는 것은 거의 불가능한 일이다. 다행히 최근 거의 대부분의 클라우드 업체나 MLOps를 지원해주는 툴들이 많이 나와있고, 계속해서 발전해나가고 있다.

 

MLOps 실전 가이드

 

이번에 살펴볼 책은 여타 MLOps의 기초나 간단한 소개를 넘어서 뭔가 실용적인 측면에서 접근한 책이다. 책의 제목에서도 알 수 있다시피 다양한 MLOps 시스템과 활용 사례에 대해서 다루고 있다. 심지어는 엣지 컴퓨팅과 엮어서 MLOps를 응용한 사례도 제공하고 있다. 그래서 일반적인 docker를 사용한 파이프라인 구축을 넘어서 뭔가 서비스로 적용된 MLOps 사례를 살펴보고 싶은 사람에게는 좋은 길잡이가 될 수 있다. 개인적으로는 중간중간에 역자 노트가 담겨져 있어서 누군가 가져볼만한 궁금증에 대해서 역자가 나름 정리한 내용을 담아놓은게 이 책의 좋은 부분이라고 생각한다.

그런데.. 책의 내용이 뭐랄까 좀 너무 중구난방식으로 흩어져있다는 생각도 들었다. 물론 다양한 사례를 담는 의도에서 책속에 AWS, Azure, GCP에 대한 사례와 실습을 담긴 했는데, 아마 실제로 써본 사람은 알겠지만 각 사에서 제공하는 서비스는 사용자 편의성을 제공하는 측면에서 전체 프로세스가 간략화되어 있고, 실제로 써본다고 해서 MLOps를 느낄 수 있는 것도 아니다. 결국 자기가 익숙한 시스템이 아닌 이상 해당 책 부분은 그냥 넘어가게 될텐데, 그러게 되면 생각보다 책에서 얻게 되는 내용이 적어지게 된다. (특히 AutoML관련된 챕터에서는 진짜 GCP에만 해당되는 내용이고, MLOps랑 관련없는 얘기들이 많이 포함된거 같다.) 그리고 아무래도 책이 2020년에 써졌다보니 몇몇 부분이 outdate된 부분이 있을거 같은데, 일부 책의 도식이나 예제 화면을 보면 20년 화면 그대로 들어있는게 있어서 해당 부분은 역자분들이 조금 관심있게 봤으면 좋지 않았을까 하는 아쉬움이 살짝 있다. (물론 일부 부분은 개인 환경에서 돌리고 올린 부분도 있다.)

다양한 MLOps의 사례를 담고 이를 실용적으로 접근하고자 한 책의 의도는 정말 잘 담겨져 있다고 생각한다. 하지만 개인적인 생각을 하나 달자면 너무 서비스별로 나눠서 설명하고, 결국 한 서비스에 익숙한 독자라면 넘기는 내용이 많기도 하고, 개인적으로 MLOps 쪽에서 알고 싶은 부분 중 하나인 Model Versioning이나 Lineage Managing 관련 내용은 살펴볼 수가 없어서 좀 기대에서 벗어난 책이었던 것 같다. 내가 너무 원하는 것만 생각하고 책은 읽은 것일지도...

(해당 포스트에서 소개하고 있는 "MLOps 실전 가이드" 책은 한빛 미디어로부터 제공받았음을 알려드립니다.)

MLOps 실전 가이드 표지

MLOps 실전 가이드 [ DevOps 와 MLOps의 이론과 실습부터 클라우드 컴퓨팅, AutoML, 엣지 컴퓨팅까지 ]

  노아 기프트, 알프레도 대자 지음

  이장후, 이일섭, 서기원 옮김

 

MLOps 란 ? (참조, 위키페디아,)

  Machine Learning Operations

  기계학습 모델을 안정적이고 효율적으로 배포하고 유지 관리하는 것을 목표로하는 패러다임 입니다.

  MLOps 는 Machine Learning Model 개발과 운영을 통합하여 ML 시스템을 자동으로 유지, 관리, 운영 합니다.

  MLOps 는 모델 생성 (소프트웨어 개발 생명 주기, 지속 적인 통합 / 지속적인 제공), 오케스트레이션 및 배포와의

                   통합에서 상태, 진단, 거버넌스 및 비즈니스 메트릭에 이르기까지 전체 수명 주기에 적용 됩니다.

  MLOps 는 Machine Learning, DevOps, Data Enginerring 이 모두 포함 됩니다..

  

 

wikipedia

MLOps는 다음 목표를 달성하기 위한 협업 및 커뮤니케이션 입니다.

  - Development and automation

  - Governance and compliance

  - Scalability

  - Collaboration

  - Monitoring and management

  - Reproducibility

 

책 구성 ::::::::::

  1장, MLOps 세상으로 초대

        이 장에서는 MLOps 가 세상에 나오게 된 이유와 그 정의와 DevOps 와 데이터 엔지니어링과 MLOps 와의 관계 등을

        예시와 사례를 통하여 설명하고 있습니다.

        이를 통하여 MLOps 가 어떠한 것인지 그리고 필요한 이유에 대해서 학습할 수 있습니다.        

  2장, MLOps를 시작하기 위한 기본 개념

        이 장에서는 MLOps에 필요한 기본 기술에 대해,

          Bash Shell 과 Command Line 에 대한 기초

              : WEBUI를 통하지 않고 터미널을 이용한 클라우드 시스템 이용을 위한 기초

          클라우드 컴퓨팅 시작 : ML 을 위한 클라우드 컴퓨팅

          최소한의 파이썬 학습 : 파이썬에 대한 소개

          프로그래머를 위한 수학 (파이썬)

          ML 최적화 (파이썬 예제)

        각각에 대한 소개 및 ML을 프로덕션 환경까지 끌어오는데 필요한 기본 지식들에 대해서 학습할 수 있습니다.

  3장, 컨테이너와 엣지 디바이스를 위한 MLOps

        이 장에서는 

          클라우드에서의 컨테이너 및 도커 소개

          도커 예제를 통한 컨테이너 생성 및 사용법 학습

          머신러닝 모델을 위한 컨테이너 및 배포

          엣지 디바이스에서의 ML 및 배포

        등에 대해서 학습할 수 있습니다.

  4장, 머신러닝 애플리케이션에 지속적 배포를 적용하기

        이 장에서는 지속적인 배포 프로세스 및 머신러닝 모델을 프로덕션 환경으로 배포하는 파이프라인을

         구축하는 전략이 무엇인지에 대해 학습할 수 있습니다.

  5장, AutoML과 KaizenML

         이 장에서는 AutoML 과 KaizenML 그리고 AutoML 과 KaizenML 의 관계에 대해서 학습 하고,

         애플 AutoML, 구글 AutoML, 애저 AutoML, AWS AutoML, 오픈 소스 AutoML 각각의 솔루션에 대해

         학습할 수 있습니다.

  6장, 모니터링과 로깅

         이 장에서는 모니터링과 로깅의 필요성과 예제를 통하여 로깅하는 법과 모니터링 하는 방법에 대해서

         학습할 수 있습니다.

  7장, AWS를 이용한 MLOps

         이 장에서는 AWS 클라우드에 대해서 소개하고, AWS를 이용한 MLOps에 대해 예제를 통하여 학습할 수 있습니다.

         또한, AWS가 제공하는 ML 리소스를 실제 기업들이 어떠한 형태로 사용하고 있는지 알 수 있습니다.

  8장, 애저 환경과 MLOps

         이 장에서는 MS의 애저를 이용한 모델학습, 파이프라인, 쿠버네티스 클러스터에 모델을 배포하는 것에 대해

         예제를 통하여 학습하고, 애저의 머신러닝과 관련한 중요한 기능들을 학습할 수 있습니다.

  9장, 구글 클라우드 플랫폼과 쿠버네티스

         이 장에서는 구글 클라우드 플랫폼에 대해서 학습하고 예제를 통하여 MLOps를 수행하는 방법을

         학습할 수 있습니다.

10장, 머신러닝 상호운용성

          머신러닝의 상호 운용성 이란 ? 특정 플랫폼에서 작성된 모델이 다른 여러 플랫폼에서도 작동되도록

          변환 하는 것을 의미합니다.

          이 장에서는 서로 다른 플랫폼에서도 작동할 수 있는 형태로 모델을 변환하는 것에 대해서 학습하고,

          머신러닝 모델에 범용성을 제공하는 ONNX 프레임워크에 대해서 학습할 수 있습니다.

11장, MLOps 명령줄 도구와 마이크로서비스 구축

          이 장에서는 파이썬을 이용한 명령줄 도구를 초기 부터 만드는 방법과 프레임워크를 통하여 도구를 생성하고

          자동화하는 방법에 대해서 학습할 수 있습니다.

12장, MLOps 실사례 연구

          이 장에서는 MLOps 실사례를 통하여 실전에서 주의해야할 점에 대해서 알아 봅니다.

          MLOps 구현을 위한 권장사항 그리고 MLOps 에 남은 중요한 과제에 대해서 몇 가지 소개하고 있습니다.

 

내용상 구성 :::::::::

이 책은, 내용 중간중간에 "Note" 를 통하여 부연 설명이 필요하거나 또는 알면 좋은 내용들에 대해 설명하고 있습니다.

장 마지막에는 "마치며"를 통하여 해당 장에서 저자가 알리고자 한 내용에 대해서 간략하게 정리하고 있습니다.

"연습해보기"에서 해당 장에서 학습한 내용을 되세겨 볼 수 있도록 하고

"생각해보기"를 통하여 학습자가 좀 더 고민 하고 학습해 볼 수 있는 주제를 던져주고 있습니다.

 

결론 ::::::::::

Machine Learning 이 더더욱 발전하고 사용되는 분야가 많아지기 시작하면서 무분별하게 도입하여 실패 하던 부분에 대해 SW 제품 관리를 용이하게 하는 DevOps 를 ML에 도입하게 되면서 MLOps 가 탄생하게 되었다고 합니다.

MLOps는 데이터 레이블링의 일관성을 위해 인프라를 구축하여 자동으로 운영되도록 하는 역활을 합니다.

즉, MLOps 는 ML에 대해서 지속적인 통합(CI)과 지속적인 배포(CD)를 운영 과정중에 도입하여 개발 주기를 단축 시기고,

ML 모델 배포 속도를 증가 시키고, 안정적인 출시를 가능하게 해줍니다.

지속성과 안정성에 도움이 되는 만큼 앞으로 더더욱 발전하고 널리 도입될 MLOps 에 대해서 소개하고 예제를 통하여 구축해 보고, 실제 도입된 사례들을 통하여 그 한계점과 앞으로의 발전 방향에 대해서 학습할 수 있는 책입니다.

많은 부분을 담으려다 보니 진행에서 조금 매끄럽지 않은 부분들도 있었습니다.

개인 적으로는 기본적으로 알았으면 좋겠는 부분들에 대해서 정리된 곳은 다른 책을 볼 수 있도록 알려 주고 이 책에서는 좀 더 실전에 포커싱해서 지면을 좀 더 할애 했으면 좋았겠다는 생각이 듭니다.


MLOps 무엇일까요?

MLOps 머신러닝 모델 개발과 머신러닝 운영 Workflow 간국을 줄이는 분야로 알려져 있습니다. 머신러닝을 운영하는 기반이 되는 소프트웨어, 인프라, 배포, 개발 방법론 등의 전반적인 것을 아우르는 플랫폼입니다.

 

이번에 소개할 MLOps실전 가이드 저서는 AI 시대에 맞춰 진화한 DevOps입니다. 많은 기업이 경쟁력을 유지하기 위해 머신러닝을 점점 많이 활용하고 있는데요. 기업이 머신러닝 운용 사례를 도입하는 과정에서 MLOps 이제 선택이 아닌 필수로 자리 잡고 있습니다.

 

MLOps 쉽게 말해 DevOps 방법론을 사용해 머신러닝을 자동화하는 프로세스라고 있는데요. 데이터 학습, 테스팅, 배포를 자동화할 있기 때문에 전체 작업 프로세스가 훨씬 효율적으로 진행합니다. 책에서 소개하는 MLOps 머신러닝 모델의 안정적인 운영과 성공적인 CI/CD 위한 MLOps 엔지니어링 노하우가 듬뿍 담겨 있습니다.

 

머신러닝이라는 강력한 기술을 사용한 시스템이 때로는 고전적인 소프트웨어 시스템만큼도 효용을 내지 못하는 경우가 종종 있습니다. 그러한 이유는 머신러닝 시스템에서 문제를 일으키는 요소는 머신러닝 모델링이 아닌데요. 머신러닝을 이용해 문제를 해결하는 것이 합리적인 생각인지 고민이 듭니다. 머신러닝 기술을 이용해 비즈니스 문제를 해결하는 것에는 크게 관심이 없고, 세부적인 기술에만 초점을 맞추는 점일지도 모릅니다.

 

MLOps 실전 가이드에서는 심도 있는 의문을 제시하고, 관련된 질문과 답을 찾아가는 재미도 있습니다. 또한, 장마다 연습해보기, 생각해보기, 데이터과학, 컴퓨터 과학, MBA 프로그램의 수업에서 사용하기에도 좋을 정도로 많은 예시가 존재합니다.

 

이뿐만 아니라 부록을 통해 MLOps 포트폴리오를 구축하는 도움이 있는 여러 사례에 대한 연구가 담겨 있는데요. MLOps 구현 고려해야 사항과 MLOps 커리어 준비를 위한 Tip 만날 있습니다 책의 모든 예제와 의견들은 미래의 자동화 측면에서 받아들여져야 한다고 조언합니다.

 

MLOps 실전 가이드는 12장으로 구성되어 있습니다. 초반에는 DevOps MLOps 기초적인 배경지식과 이론과 합쳐진 실습을 다룹니다. 자동화와 함께 책에서 끊임없이 다루는 주제는 지속적인 통합과 지속적인 배포입니다. 중반으로 넘어갈수록 클라우드 컴퓨팅에 대한 내용과 AWS, 애저, GCP 내용들을 7 ~ 9장에서 만날 있습니다.

 

다른 장에서 AutoML, 컨테이너, 엣지, 컴퓨팅, 모델 이식성을 포함해 머신러닝 운영에서 요구될 있는 중요한 기술 분야들에 대해 다룹니다. 마지막은 노아의 소셜 미디어 스타트업에서 경험을 바탕으로 MLOps 수행하면서 마주했던 실제 사례에 대한 내용을 다룹니다. 그리고 실무자들의 인터뷰 내용도 간간히 소개되고 있습니다.

 

MLOps 개념과 원리, 구현하는데 필요한 도구와 기술, MLOps 도입하고 운영하는 과정에서 발생할 있는 문제와 해결책 MLOps 대한 모든 것을 담고 있습니다. 클라우드 기반 MLOps 익숙해지기 위한 훌륭한 지름길이 되어 있는 저서는 MLOps 실전 가이드라고 생각합니다.

 

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

  • MLOps 에 대한 내용은 주로 DevOps와 관련된 내용을 참고해 오고 있었는데 이렇게 딱 MLOps 만을 한정한 책이 나와 인상깊게 읽게 되었다.
  • 머신러닝 모델을 만들었다면 이를 꾸준히 개선하고 운영해야 좀 더 나은 모델로 현실세계 문제를 해결하는데 도움이 되기 때문에 모델을 서빙하고 운영하는 것에 대한 중요성을 실감하고 있던터라 더 인상깊게 읽어볼 수 있었다.
  • 또, 기존에는 종이책으로 주로 읽었지만 이번 책은 e-book으로 신청해서 읽었는데 지하철이나 이동중에 핸드폰만 있어도 잠깐씩 볼 수 있다는 점이 좋았다.

클라우드 제품군별 챕터

실용적인 접근 방식을 통해 “Practical MLOps”는 MLOps를 실제로 구현하고 적용하는 방법에 초점을 맞추고 있는 점이 좋았으며, 데이터 관리, 모델 훈련, 모델 배포, 모델 모니터링 등의 주제를 다루며, 이를 위한 도구와 기술에 대해 자세히 설명하고 AutoML뿐만 아니라 주로 사용되는 클라우드 제품군 별(AWS, Azure, GCP)로 설명을 제공한다는 점도 인상적이었다.

참고로 이 책에서 챕터별로 소개하는 클라우드 서비스는 아래 3가지다.

  1. Amazon Web Services (AWS): AWS는 대규모 클라우드 컴퓨팅 서비스를 제공하며 EC2, S3, Lambda, SageMaker 등 다양한 서비스를 제공하고 있다.
  2. Microsoft Azure: Azure는 마이크로소프트가 제공하는 클라우드 컴퓨팅 서비스로 Virtual Machines, Blob Storage, Azure Kubernetes Service, Azure Machine Learning 등 다양한 서비스를 제공하고 있다.
  3. Google Cloud Platform (GCP): GCP는 구글이 제공하는 클라우드 컴퓨팅 서비스로 Compute Engine, Cloud Storage, Kubernetes Engine, AI Platform 등 다양한 서비스를 제공하고 있다.

생각해 보기

이 책은 MLOps의 다양한 측면을 다루고 있으며, 데이터 관리, 모델 개발과 배포, 모니터링 및 유지보수 등에 대한 상세한 가이드를 제공한다. 또, 가이드 뿐만 아니라 중간중간 연습해 보기와 생각해 보기를 제공하고 있는데 해당 챕터를 통해 아래와 같은 고민해볼만한 질문을 던져주는 점이 좋다.

2025년이나 2035년에는 머신러닝의 어떤 요소가 완전히 자동화되어 있고, 어떤 요소가 여전히 사람의 도움을 필요로 하고 있을까?

하드웨어부터 운영체제 프레임워크까지 모든 기술 스택에 대하여 수직계열화 전략을 펼치는 거대 IT 기업들이 어떤 기업들과 긍정적인 시너지를 낼 수 있을까?

머신러닝의 데이터 전처리 및 피쳐 추출, 하이퍼파라미터 튜닝, 모델 선택 등의 요소를 어떻게 자동화 할지? 머신러닝 모델의 설계 및 개발, 데이터의 품질 관리, 모델의 성능 평가 및 해석 등을 잘하기 위해서는 어떤 고민을 해야할지? 머신러닝 알고리즘 자체의 한계나 예외 상황에 대처하기 위해 어떤 개선을 해야할지 등을 고민하게 해준다.

MLOps에서의 중요한 과제

MLOps에서 발생하는 어려움에 대한 중요한 과제를 언급하고 있으며 대표적인 도전 과제로 윤리적 문제와 의도치 않은 결과, 운영 능력의 부족, 예측 정확도와 성능 목표 사이의 균형에 대해 제시한다. 머신러닝 시스템의 실제 운영에서 유지보수 비용이 막대하게 발생하는 것이 일반적이며, “Hidden Technical Debt in Machine Learning Systems” 논문을 추가자료로 추천하여 더 고민해 볼 것을 제시한다.

MLOps 최종 프로젝트 체크리스트

최종 프로젝트 체크리스트를 참고하여 MLOps를 운영하고 준비하는데 활용해 볼 수 있도록 예시를 제시해준 점도 좋다.

  • 최종 프로젝트 체크리스트의 예시
    • 머신러닝 예측/추론이 수행되는가?
    • 별도의 환경이 있는가?
    • 포괄적인 모니터링과 경고가 있는가?
    • 올바른 데이터스토어가 사용되었는가? (관계형, 그래프, 키/값 등)
    • 최소 권한 원칙이 적용되었는가?
    • 데이터가 이동 및 저장 중에 암호화되었는가?
    • 성능 검증을 위해 응용 프로그램을 테스트했는가?

소프트스킬에 대한 조언

IT 기술 분야는 하드스킬뿐만 아니라 배우는 소프트스킬도 중요한데 마지막 부분에 있는 조언 또한 인상적이었다.

  • 소프트웨어 관련 직업은 끊임없이 학습하고 숙련되어야 한다.
  • 학습하는 과정은 고통을 받고, 실수를 허용하는 과정이다.
  • 회사에서는 모든 사항을 제공하기 어렵기 때문에 개인적으로 학습 방법과 시간을 확보해야 한다.
  • 업무 시간 중 20% 정도를 학습에 할애하는 것이 권장된다.

또 운영과정에서는 실패를 자주 마주할 수 밖에 없는데 학습하는 과정이 고통을 받고 실수를 허용하는 과정이라는 점에서 마음의 위로가 되기도 했다.

이 리뷰는 한빛미디어의 나는 리뷰어다 이벤트를 통해 도서를 제공받아 작성했습니다.

  •  

우리가 MLOps에 관심을 갖는 것은 Machine Learning을 통해 해결하고자 하는 문제가 있기 때문이다. 이 책의 저자는 Athlete Inelligence 라는 마케팅 비지니스를 구축했다. 이 때, ML을 통해 여러가지 예측을 수행하였고 이를 지속적으로 관리하기 위해 MLOps 파이프라인을 통해 서비스를 안정적으로 유지할 수 있었다고 한다.

우리가 풀고 싶은 문제는 무엇일까? 혹은 해내고 싶은 미션은 무엇일까? 생각을 거듭하여 명확한 문제 정의를 하였다면 DevOps와 MLOps를 통해 세상에 좋은 영향을 펼쳐보자. 이 책은 그 여행을 도와주는 좋은 나침반이 될 것이다.

 

이 책에 대한 좀 더 자세한 리뷰는 아래 링크에서 확인할 수 있습니다.

https://altari.io/2023/07/23/Practical_ML_Ops.html

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

DevOps가 개발의 생산성과 운영의 안정성을 최적화하기 위한 문화이자 방법론이라고 한다면, MLOps는 DevOps의 문화, 철학, 방법론을 시스템에 적용한 것이라고 할 수 있다. 따라서 MLOps를 다루려면 개발과 운영부터 클라우드를 포함한 시스템 그리고 머신러닝까지 알아야 한다. 이 책은 어느 것 하나 버릴 것 없이 마치 퍼즐 조각처럼,  MLOps라는 완성된 그림을 향해 시행착오 없이 목적지까지 잘 도착할 수 있도록 훌륭한 지도처럼 독자를 이끌고 있다.

 

 
 

# 내용

한줄 요약: 

DevOps로부터 발전한 MLOps에 대한 모든 실전 팁!

# 느낀 점

MLOps가 DevOps로부터 발전된 형태임을 다시 상기시켜주는 초장부터, MLOps의 다양한 실전 예제를 다루고 있는 중후반부까지 MLOps 개발자 뿐만 아니라 해당 기술에 대해 관심있는 사람이라면 꼭 한번 읽어봤으면 하는 서적이다.

특히 초반부에 DevOps를 강조하는 부분이 좋았는데, 책에 나온 말을 인용하자면...

"DevOps 기틀을 완성해야지만 그 다음 단계인 데이터 자동화를 구축할 수 있다. 데이터를 자동화 한 후에 플랫폼 자동화를 구축할 수 있고, 마지막에야 진정한 머신러닝 시스템 자동화를 구축할 수 있다. 실제로 MLOps의 완전체는 '잘 작동하는 머신러닝 시스템'이다"

공감되는 이야기 중 하나이며, 가장 간단한 시스템부터 차근차근 공부하고 익혀나가고 조금씩 복잡성을 더하며 확장한다면, 훌륭한 머신러닝 관리 프로세스를 개발할 수 있다고 생각된다.

# 참고

노아 기프트, 알프레도 데자. 『MLOps 실전 가이드: Practical MLOps』. 이장후, 이일섭, 서기원(역). 한빛미디어, 2023.07.

참고로, 이 책은 한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.

 

Intro

MLOps는 머신러닝이 뜨기 시작하기부터 엄청 뜨고 있는 분야이다. 요즘은 머신러닝 모델만 잘 만들어야 되는 것이 아닌 파이프라인까지 잘 만들어야 한다. MLOps는 머신러닝(ML)과 DevOps의 합성어로 쉽게 설명하면 머신러닝 모델을 개발하고 배포하는 과정을 자동화하는 것이다. 이게 어떻게 가능한가 궁금한 사람들이 많을 것이다. 나 또한 그렇게 공부를 시작했으며, 현재는 머신러닝을 공부하고 더 나은 파이프라인을 만들기 위해 MLOps, 백엔드 부분을 더 공부해보고 있다. 이 책 또한 나에게 도움이 될 것 같아 읽게 됐다.

Book Review

초심자도 읽을만한가

엄청 쉽다고는 말하지 못 할 것 같다. 그러나 MLOps에 대해 관심이 있고 한 번이라도 공부해본 분들께는 이 책을 추천할 것 같다. 제목 그대로 실전 가이드이기에 이론적인 부분보다는 실습 위주로 설명이 되어있다. 그러나 이론적인 부분도 충분히 설명이 되어있기 때문에 커맨드라인 환경, 파이썬, 컨테이너 등 기본 개념만 있다면 이 책을 읽기에 더욱 수월할 것이다. MLOps에 관심이 있다면 한 번쯤 읽어봐야 할 책이라고 생각한다.

실습 가이드

이 책은 위에서도 언급 했듯이 실습 가이드 그 자체라고 말할 수 있다. MLOps를 공부하고 싶다면 이런 것들은 알아야 한다고 간접적으로 알려주는듯이 말한다. MLOps라는 분야 자체가 엄청 많은 것들을 알아야 할 수 있는 분야이기에 이렇게 설명했다고 생각한다. 깊이보다는 다양한 것들을 알려주기 위한 책이라 말할 수 있다. 그래서 이 책을 읽고 나면 MLOps에 대해 어떤 것들을 공부해야 하는지 알 수 있을 것이다. 재밌었던 점은 각 챕터의 마지막에 '연습해보기'와 '생각해보기'가 있는데 문제를 해결해야 한다는 것이 재밌었다. 연습해보기는 실습 위주로 문제를 풀어야 하고 생각해보기는 이론적인 부분을 생각해서 풀어봐야 한다. 이런 부분까지 다 해결해보면 MLOps에 대해 더 잘 이해할 수 있지 않을까. 개인적으로 설명도 꽤 잘 되어 있고, 번역도 잘 되어 있다고 느꼈다. 또한, 지금 하고 있는 공부에 여유가 생긴다면 MLOps에 대해 더 깊게 공부해보고 싶다는 생각이 들었다.

21년도에 번역되었다면

조금 아쉬웠던 점은 이 책이 flask를 사용한다는 점. 요즘도 물론 flask를 많이 사용하고 있겠지만, fastapi를 사용하는 추세이지 않나 싶다. 기회가 된다면 이 책의 flask 코드를 fastapi로 바꿔보는 것도 재밌는 경험이 될 것 같다.

이쪽 기술은 항상 변화가 빠르기에 이런 부분에서는 아쉬움이 남는다. 아무래도 이 책의 원서가 2021년도에 출간된 것이라 그런 것 같다. 2021년도에 이 책이 번역되어 나왔다면 엄청 인기가 있었지 않았을까.

21년도에는 코드가 돌아갔지만, 현재 23년도에는 안 돌아가는 코드들도 있을 수 있을 수 있으니까 역자분들께서 그런 부분을 찾아내고 수정 및 보완하는 과정에서 엄청 힘드셨지 않으셨을까 싶다.

대상 독자

MLOps 쪽으로 업무를 해야 하는 사람에게 추천한다. 관심이 있거나 이쪽을 경험해보고 싶은 분들께도 추천할 수 있을 것 같다. 사전에 컨테이너, 커맨드라인, 백엔드, 클라우드 등을 알고 있으면 이 책을 읽기 더욱 쉬울 것이다.


[도서 소개]

* 머신러닝 모델의 안정적인 운영과 성공적인 CI/CD를 위한 MLOps 엔지니어링 노하우

* MLOps 포트폴리오 작성 Tip, MLOps 실무자의 인터뷰 수록

* 최신 내용 기반한 역자 노트 추가 및 소스 코드 리팩토링 반영


이 책은 MLOps와 DevOps의 개념을 종합적으로 이해하고, 깊이 있는 학습을 돕기 위해 다양한 실습을 포함하고 있습니다. 머신러닝 모델의 안정적인 운영을 위한 배포 방법과 AutoML, 컨테이너, 엣지 컴퓨팅, 모델 이식성 등 MLOps의 중요한 기술 영역을 다룹니다. 뿐만 아니라 AWS, 애저 환경, GCP 등 다양한 클라우드 플랫폼에서의 MLOps 경험을 쌓을 수 있도록 실습을 제공합니다. 저자의 실제 경험을 바탕으로 한 MLOps 사례 및 MLOps 실무자들의 인터뷰 내용도 소개하고 있습니다. 부록에서는 MLOps 구현 시 고려해야 할 사항과 MLOps 커리어 준비를 위한 인터뷰 질문 및 기술 포트폴리오에 필요한 작성 Tip도 제공하여 실무에 쉽게 적용할 수 있도록 도와줍니다.


[MLOps 실전 가이드는 어떤 책인가?]


ㆍAWS, 애저, 구글 클라우드 플랫폼에서의 MLOps 실습

ㆍ최신 내용 기반한 역자 노트 추가 및 소스 코드 리팩토링

ㆍ연습해보기와 생각해보기로 자체 복습습

ㆍMLOps 포트 폴리오 작성 Tip 소개


[이 책의 대상 독자]


ㆍMLOps 코드와 함께 문서를 작성해야 하는 소프트웨어 개발자

ㆍ다양한 플랫폼에서의 MLOps를 경험하고 싶은 개발자

ㆍ머신러닝 개발과 함께 실제 서비스 배포를 위한 엔지니어링이 궁금한 개발자


[이 책의 구성]


[서평]

"MLOps 실전 가이드"는 MLOps와 DevOps 모두에 정통한 저자가 저술한 이 책은 독자들을 이 두 분야의 융합을 통해 개념을 종합적으로 이해하고 MLops로 머신러닝 모델의 안정적인 운영과 성공적인 CI/CD를 위한 MLOps 엔지니어링 노하우를 배울수 있습니다.


이 책의 강점은 이론에서 실제 구현에 이르는 MLOps에 대한 포괄적인 접근 방식에 있습니다. 핵심 개념에 견고한 기반을 마련하고 MLOps와 DevOps 간의 관계를 명확히 하고 자동화의 중요성을 강조하는 것으로 시작합니다. 저자는 이러한 진화가 어떻게 AI 시대에 맞게 조정되어 오늘날의 기술 환경에 적절하고 시의적절하게 만드는지 자세히 설명합니다.


"MLOps 실전 가이드"의 두드러진 특징 중 하나는 MLOps실습 학습에 중점을 두고, 자동화된 번역에 의존하지 않고 번역가가 직접 원문을 직접 번역하고 소스코드를 제시하여 독자가 능동적으로 자료에 참여할 수 있도록 합니다. 이 실용적인 측면을 통해 개발자는 원활하게 진행하고 새로 얻은 지식을 실제 프로젝트에 적용할 수 있습니다.


책 전반에 걸쳐 "역자 노트" 통합은 독자들에게 최신 업데이트와 보충 설명을 제공하는 사려 깊은 터치입니다. 이러한 주석은 잠재적인 이해 격차를 해소하여 MLOps를 처음 접하는 독자도 복잡한 개념을 쉽게 이해할 수 있도록 합니다.

또 다른 칭찬할 만한 측면은 AWS, Azure 및 Google Cloud Platform을 포함한 주요 클라우드 플랫폼에 초점을 맞추고 있다는 것입니다. 


이 책은 이러한 환경에서 MLOps를 구현하는 방법에 대한 단계별 지침을 제공하므로 기계 학습 모델을 배포하고 관리하는 데 실용적인 지침을 찾는 개발자에게 좋은 노하우가 될 것입니다.


실제 사례를 포함하면 가이드에 진정성을 더할 수 있습니다. 독자는 번역가의 경험에서 귀중한 통찰력을 얻을 수 있어 책의 신뢰도를 더욱 높일 수 있습니다.

이 책은 다양한 수준의 소프트웨어 개발자를 대상으로 합니다.  사소한 개선 영역 중 하나는 학습 경험을 향상시키기 위해 더 많은 시각 자료 또는 다이어그램을 포함하는 것입니다. 시각 자료는 종종 복잡한 개념을 효과적으로 전달하는 데 도움이 됩니다.


결론적으로 "MLOps 실전 가이드"는 MLOps 및 DevOps 통합에 대한 포괄적인 이해를 배울수 있으며, 자동화, 실습 및 실제 시나리오에 중점을 둔 책으로 개발자가 AI 기반 자동화의 세계에서 탁월한 성과를 거두는 데 필요한 기술과 인사이트를 제공합니다. MLOps과 함께 DevOps 서비스 배포에 대해 궁금한 사람이라면 반드시 읽어야 할 책입니다.



 "한빛미디어 리뷰어 활동을 위해서 책을 제공받아 작성된 서평입니다."

이 책은 실전 입문이라는 책 답게 ML 모델의 개발부터 배포, 운영까지의 전 과정을 다루고 있다. 머신 러닝 모델의 생애 주기를 다루면서 ML Ops의 필요성과 중요성을 알수 있다. 

책은 총 12개의 장으로 구성되어 있고 각 장마다 다른 주제를 다루고 있다. 첫 장과 두번째 장에서는 ML Ops 의 기본 개념과 장점을 소개하고 있으며 세번째 장부터는 실전적인 내용들을 차례대로 접근한다. 데이터 수집, 모델 훈련, 평가, 배포, 모니터링, 유지지보수, 그리고 AWS, Azure, GCP 환경에서 활용하는 방법 등을 설명해준다. 

최근 몇년 동안 머신 러닝 모델의 훈련과 개발은 크게 발전했지만 이를 공부하고 운영환경에 적용하는데에는 여전히 어렵다는게 현실이다. 그리고 개개인이 스스로 공부를 하면서 구축을 해보기에는 많은 도전과 시행착오가 필요하다. 그리고 여기저기 인터넷에 내용들이 많이 있지만 어떤 것들을 참고해봐야 할지 조차도 판단하기 어렵다. 그에 비해서 이 책은 ML Ops의 개념을 이해하기 쉽게 설명하고, 구현에 필요한 다양한 도구와 기술들을 소개함으로써 이러한 어려움을 해소해 주고있다.

그렇기 때문에 이 책은 개발자, 시스테관리자, 클라우드 엔지니어 등과 같이 머신 러닝모델을 개발하고 운영하는데 관심이 있는 모든 분들에게 도움이 될것 같다. 그리고 초보자들도 따라할 수 있도록 자세한 가이드를 제공하기 때문에 하나하나 따라 해볼수 있을 것이다. 

  "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

1.jpg

 

요즘 대기업에서는 A.I 및 IoT를 위해 머신러닝에 대해 개발을 추진하는 추세입니다. 머신러닝이란 기술은 인간의 뇌구조를 묘사한 뉴럴 네트웍에 기반한 기술이고 굉장히 다양한 일들을 하고 있는데 예전에는 단순히 로봇에 학습을 시켜서 사람을 따라하게 만들었지만 이제는 로봇뿐만 아니라 스피커, 청소기등등이 자신들이 가지고 있는 학습 데이터에 기반해서 판단을 내리고 행동하는 초연결시대로 나아가기 위한 기술이기 때문입니다. 그래서 구글, 삼성같은 IT관련 대기업들은 이미 머신러닝에 관련된 기술자들을 교육해서 키워내는 등 첫번째 선두로 등장하기 위해 엄청난 경쟁을 벌이고 있을 정도로 21세기의 핵심 기술중 하나입니다. 소프트웨어 엔지니어링 프로세스뿐만 아니라 데이터나 모델링까지 자동화하는 행위를 MLOps라고 하는데 DevOps 방법론을 사용하여 머신러닝을 자동화하는 프로세스라고 생각하시면 됩니다.

 

제가 이 책을 선택한 이유는 MLOps의 기본 개념부터 시작하여 테스팅, 린팅, CI/CD와 같은 DevOps 관련 개념과 예시, AWS/GCP/애저에서의 구성 및 실제 예시들, 깃허브 액션과 쿠버네티스를 이용한 구축 방법 등 MLOps를 시작할 때 필요한 지식이 모두 들어있어 기본적인 개념은 물론이고 클라우드별 MLOps 실습과 함꼐 실제 MLOps 서비스를 제공할 때 고려해야할 사안들까지 정리하여 알려주며 또한 다양한 플랫폼의 실제 예시를 설명하여 머신러닝에 대한 사회적 관심이 깊어지는 현재에 MLOps를 위한 기초 개념뿐만 아니라 어떻게 머신러닝 모델을 효과적으로 배포하고 관리할 것인지 알 수 있기 때문입니다.

 

이 책의 특성은 머신러닝 엔지니어링과 MLOps의 철학적인 개념과 이유, 이론, 실습 및 실전 내용까지 모두 포함하여 독자가 이해하고 따라 할 수 있도록 단계별로 구성되어 있어 클라우드 플랫폼별 사용 방법부터 마이크로서비스, 실전 사례 소개까지 MLOps를 이해하고 실천 및 실무자가 실제 작업 프로젝트에 기여하는데 도움 되는 주제를 담고 있습니다. 이 책은 머신러닝 엔지니어링과 클라우드의 MLOps에 초점을 맞추고 있어 MLOps에 대한 개념을 통찰력 있게 설명하고 사례별 Hands-on 실습 코드를 제공함으로써 독자가 MLOps의 본질을 명확히 이해하고 다양한 기술 전문가의 경력과 실용적인 팁을 함께 제공하여 현업에 바로 적용할 수 있도록 도와줍니다. 특히 클라우드 플랫폼별로 MLOps를 구축하는 방법과 실제 사례가 포함되어 있어 실무 활용도가 매우 높다는 점입니다.


구성

Chapter 1: MLOps 세상으로 초대

Chapter 2: MLOps를 시작하기 위한 기본 개념

Chapter 3: 컨테이너와 엣지 디바이스를 위한 MLOps

Chapter 4: 머신러닝 애플리케이션에 지속적 배포를 적용하기

Chapter 5: AutoML과 KaizenML

Chapter 6: 모니터링과 로깅

Chapter 7: AWS를 이용한 MLOps

Chapter 8: 애저 환경과 MLOps

Chapter 9: 구글 클라우드 플랫폼과 쿠버네티스

Chapter 10: 머신러닝 상호운용성

Chapter 11: MLOps 명령줄 도구와 마이크로서비스 구축

Chapter 12: MLOps 실사례 연구

APPENDIX A: 기술 자격증

APPENDIX B: MLOps를 위한 기술 포트폴리오 작성 Tip


파트별로 나누어 봤을때 1~2장은 DevOps와 MLOps의 이론과 실습에 대해 설명하고 있고, 3~4장은 자동화와 지속적인 통합과 지속적인 배포의 구성에 대해, 5~6장은 KaizenML과 모니터링에 대해, 7~9장은 AWS, 애저, GCP에 대해, 10~11장은 AutoML, 컨테이너, 엣지 컴퓨팅, 모델 이식성을 포함하여 머신러닝 운영에서 요구될 수 있는 중요한 기술 분야들에 대해, 12장은 저자의 실제 업무에서의 경험을 바탕으로 MLOps를 수행하면서 마주했던 실제 사례에 대해 설명하고 있습니다.


개인적인 생각으로 학습은 머신러닝 프로그래밍을 처음 배우는 초보자, ML 엔지니어, 데이터 과학자, 데이터 엔지니어, ML 플랫폼 엔지니어, 엔지니어링 관리자 등 ML 관련 직무로 취업 및 이직을 희망하시는 분들께서는 우선 ML 모델, 신경망 아키텍쳐, 지표, 통계 같은 기초 개념과 기본 ML 기술, 일반적인 ML 작업 등 기술적인 요소에 대해 학습하신 다음에 1장부터 시작하시면 좋을 것 같고 어느정도 경험이 있으신 분들(2년차~ 또는 ML 플랫폼 및 ML 서비스를 구축 및 관리한 경험이 있음)부터는 2장까지는 쭉 훓으시면서 머신러닝 시스템에 대해 파악한다는 방식으로 보시고 3장부터 학습하시는 것이 좋을것 같습니다.​

 

개인적으로 약간의 단점이 어쩌면 욕심일수도 있는게 좀더 많은 실습 예제 및 비즈니스 케이스가 담겨있으면 더 좋았지 않았을까라는 아쉬움이 있습니다.


저의 리뷰를 읽어주셔서 감사합니다. 다음에는 좀더 유용하고 좋은 책으로 더 나은 리뷰를 통해 여러분께 책을 소개시켜드릴 수 있도록 더 노력하겠습니다.


감사합니다.


"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

KakaoTalk_20230723_002851039.jpg

 

 

 "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

"MLOps 실전 가이드"는 MLOps의 개념과 구현에 관심 있는 독자들에게 권하는 책입니다.

저자들이 MLOps의 개념과 원리를 상세히 설명하며, 실전에서 활용 가능한 기술과 도구들을 다룹니다. 

특히, 머신러닝 모델 개발에서부터 배포와 모니터링까지의 전 과정을 다루는 점이 매우 유용하며, 

책의 구성이 체계적이어서 쉽게 따라갈 수 있습니다.

  이 책의 개인적으로 가장 좋았던 점은 MLOps에 대한 개념을 이해하기 쉽게 설명해준 것입니다. 

초보자에게도 친절한 설명으로 시작하여 MLOps에 대한 기초부터 깊이 있는 내용까지 접근 가능하게 해줍니다.

또한, 책에는 다양한 클라우드 플랫폼과 MLOps 도구들에 대한 실제 사용 예시가 포함되어 있어, 

독자들이 직접 적용해볼 수 있도록 도와줍니다.

  다양한 주제들이 다루어지고 있지만, 깊이는 좀 아쉽습니다.  

특히, 특정 클라우드 플랫폼에 대한 예시가 다소 제한적이며, 다양한 클라우드 서비스를 사용하는 독자들에게는 조금 아쉬울 수 있습니다. 

  이 책은 주로 머신러닝 엔지니어, 데이터 과학자, 소프트웨어 엔지니어, 시스템 관리자, 그리고 MLOps 역할을 수행하는 사람들에게 추천합니다.특히, MLOps에 관심이 있는 프로젝트 관리자나 데이터 엔지니어들에게도 유용한 정보를 제공합니다. 

또한, MLOps 구현과 클라우드 환경에 익숙하지 않은 독자들이나 초보자들에게도 친절한 설명과 다양한 실습 예제를 통해 큰 도움이 될 것입니다.

 

사실상 MLOps에 관심이 많지만 클라우드 환경에 익숙치 않고 최신동향에 어두운 제가 이 책에 딱 맞는 타겟 독자로 느껴졌습니다.

읽어보시기에 좋은 책으로 추천드립니다.

 

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

 

많이 들어본 DevOps의 개념을 머신러닝 시스템에 적용한 것이 MLOps입니다.

 

DevOps가 효율적인 개발과 운영을 위해 필수가 되면서 시작하면서 MLOps 또한 실제 서비스에서 필수적인 요소가 되었습니다.

 

많은 MLOps 관련 강의와 도서가 쏟아지는 것은 위와 같은 이유겠지요.

 

이 책은 책 한권에 다양한 플랫폼에서의 MLOps에 대한 내용과 AutoML, 실사례 등 다양한 내용이 포함되어 있다는 점에서

MLOps 관련 도서를 찾는 분에게 추천하고싶습니다.

 

책의 2챕터에서는 MLOps를 위한 기본 개념으로 Bash Shell, Linux 커맨드 라인과 클라우드 컴퓨팅, 파이썬 등 

쉘과 머신러닝의 요약 정도의 내용이 포함되어, 얕은 지식으로 시작하는 사람도 어렵지 않게 따라갈 수 있게 되어있습니다.

 

이후 내용으로는 가상머신, AWS, Azure 등에서의 MLOps 구현에 대한 내용으로 되어 있으며, 

이 도서에만 있지 않을까 싶은 애플의 AutoML에 대한 내용도 있습니다.

엄청 깊은 내용은 아니지만 이런 최신 내용도 언급되어 있다는 점만으로도 다른 도서에 비해 추천할 이유는 충분해보입니다.

 

마지막 부분에서는 머신러닝의 상호운용성에 대한 내용과 MLOps의 실사례 연구에 대한 내용으로 단순히 줄줄이 이론으로만 구성하지 

않고 실사례에 대한 내용과 머신러닝에서 무지함이 주는 뜻밖의 이점 등 재미있는 내용도 포함하였습니다.

 

Q. MLOps에 대한 도서이면 그림과 글만 있기에 실제 도입하는 방법과 실습은 불가하지 않을까?

A. 아닙니다. 예시로, 가상환경에 Tensorflow Lite를 설치하여 분류를 하는 내용이 있습니다.

 

MLOps에 대한 다양한 내용을 너무 옅지도, 깊지도 않게 읽어보고 싶다면 이 책을 추천합니다.

이 책의 특징

  • 실무적이다. 멋있지 않더라도 실제 운영을 위해 알고 있어야 할 짜잘한 내용까지 모두 담겨 있음어서 좋다. 초보자일 수록 더 도움이 될 것 같다.
  • 내가 빠뜨리고 있었던 것, 생각하고 있지 못했던 것, 혹은 하려고 했으나 즉각적인 액션 아이템이 떠오르지 않아서 제껴두었던 것들을 할 수 있게 된다. 여러가지 몰랐던 도구들을 알게 된다. 
  • 모범사례들을 제시해준다. 이렇게 해도 되고 저렇게 해도 되고 굳이 효율성을 파들어가서 판단하기에는 자잘한 일들이 있을 때 유용하다.
  • 내가 MLOps를 하고 있고 여러 가지 기술들을 써보았지만 이 과정에 대한 배경지식이 별로 없다. 이럴 때도 도움이 될 것 같다.
  • 내가 데이터 사이언티스트인데 회사에서 갑자기 MLOps를 시켜서 하게 되었다. 그런데 내가 리눅스고 클라우드고 컨테이너고 쿠버네티스고 잘 모른다. 그러면 이 책을 보면 도움이 될 것 같다. 

1. MLOPs이란? MLOps란 DevOps의 머신러닝 버전입니다. DevOPs란 Development와 operation의 합성어입니다. Devops에선 “테스트의 자동화”, “CI”, “CD”등에 대해 다룹니다. 대상 독자 : 솔직히 posix (unix,linux,mac ) shell에 익숙하고, python의 기계학습, docker, cloud 환경, 등등 배경지식이 좀 있으신 분이 읽어야 할 것 같습니다. 모두 짧은 설명이 나오나, 부족한 느낌입니다. 2. 책의 내용 읽은 내용 중 기억에 남는 내용 위주로 적어 봤습니다. automl : 데이터만 준다면 모델을 자동으로 만들어준다. 종류로는 github action github에서 자동으로 테스트 해주고 해당 루틴을 실행 해 준다. C++로 작업을 하는데 헷갈리는 용어들이 있었습니다. Sanitizers 코드를 실행하면서 분석하는 동적 분석기이다. Linters 코드를 실행하면서 분석하는 정적 분석기이다. Static code analysis tools clang-tidy와 같이 엣지 디바이스 : 물리적으로 연산자원이나 인터넷이 제한적인 기기. google coral, tf lite autoML, Docker, Cloud 기술, github action, AWS, AZure에서 mlops하는 법을 배웁니다. 솔직히 어려워서 잘 못 읽었습니다. 3. 책의 장점 키워드 들로 어떻게 공부해야하는지 방향성을 볼 수 있었습니다. 4. 책의 단점 처음 해보는 분야이고 번역서라 그런지 부드럽게 읽히진 않습니다. 물론 제 독해력이 부족한 부분도 있습니다. “한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.”

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

머신러닝은 다양한 산업에서 활용되고 있는데, ML모델을 개발을 하고 배포하는 것은 매우 어렵고 복잡한 과정을 가지고 있어 시간이 많이 소요됩니다. MLOps는 ML를 개발, 배포, 운영을 자동화 하는 것을 목표로 하고 있고 요즘 많이 부각되고 있는 분야입니다.

머신러닝의 결과인 추론 모델을 지속적으로 업데이트를 할 수 있고 이것을 이용하여 서비스를 활용할 수 있습니다. 클라우드에서 가상 환경을 구성해 실습을 안내하고 있습니다. 그렇기 때문에 활용도가 더 높아지는 효과가 생깁니다. MLOps를 사용하는 곳은 점점 많아지고 필요성을 많이 느끼지만, 제대로 안내하는 책이 없어 공부하기가 힘든 책인데, 이 책은 그것을 안내하고 있어 구축하는데 많은 도움을 줄 수 있을 거라 생각합니다. 기업에서도 MLops를 개발하는 사람을 많이 채용을 하고 있기 때문에, 기술을 익힌다면 본인의
스펙을 올릴 수 있는 기회라고 생각합니다.

MLOps에 관심이 있다면 적극적으로 추천드립니다.

1.png

 

머신러닝(ML)은 다양한 산업에서 혁신을 가져오는 데 중요한 역할을 하고 있습니다. 그러나 ML 모델을 개발하고 배포하는 것은 복잡하고 시간이 많이 소요될 수 있습니다. MLOps는 ML 모델의 개발, 배포, 운영을 자동화하고 조정하는 데 중점을 둔 새로운 분야입니다.

"MLOps 실전 가이드 DevOps와 MLOps의 이론과 실습부터 클라우드 컴퓨팅, AutoML, 엣지 컴퓨팅까지"는 MLOps를 도입하고 운영하는 방법에 대해 자세히 설명하는 책입니다. 이 책은 MLOps의 개념과 원리를 설명하고, MLOps를 구현하는 데 필요한 도구와 기술을 소개합니다. 또한, MLOps를 도입하고 운영하는 과정에서 발생할 수 있는 문제와 해결책을 제시합니다.

이 책은 MLOps에 관심이 있는 모든 사람에게 유용한 자료입니다. 특히 MLOps를 도입하고 운영하는 방법을 배우고 싶은 사람들에게 필수적인 책입니다.

이 책은 다음과 같은 내용을 다룹니다.

  • MLOps의 개념과 원리

  • MLOps를 구현하는 데 필요한 도구와 기술

  • MLOps를 도입하고 운영하는 과정에서 발생할 수 있는 문제와 해결책

이 책은 MLOps에 관심이 있는 모든 사람에게 유용한 자료입니다. 특히 MLOps를 도입하고 운영하는 방법을 배우고 싶은 사람들에게 필수적인 책입니다.

"한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

  한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다.
MLOps 실전 가이드

대부분의 소프트웨어 개발 과정과 마찬가지로 머신러닝이 포함된 제품을 개발하기 위해선 신경 써야 하는 것들이 한둘이 아니다.

개발 과정에서 필연적으로 나타나는 수 많은 소프트웨어의 변경사항들을 빠르게 적용하고, 운영 상황에서 벌어지는 이슈들에 빠르게 대처하기 위해 DevOps가 필요하다. 머신러닝 역시 지속적인 발전과 유연한 운영을 위해 잘 정립된 DevOps 모범사례들을 적용한 것이 바로 MLOps이다.

<MLOps 실전 가이드>는 MLOps에 관심 있는 독자들부터, MLOps는 모르지만 머신러닝으로 제품화를 꿈꾸는 사람들까지 MLOps 세계에 첫발을 내딛을 수 있도록 도움을 줄 수 있는 책이다. 책에는 다양한 예제 코드들이 있어 어떤 방식으로 동작하는지 시각적으로 보여주면서, 각각의 코드들을 세부적으로 설명해 코드 자체를 이해하는데 큰 도움을 준다.

이 책은 "실전 가이드"라는 제목처럼 MLOps라는 방대한 세계관에 첫 발을 딛는 입문자나 MLOps를 개념적으로만 이해하고 있는 개발자를 위한 책이다. MLOps에 대한 배경 지식이나 실전에서 사용되는 다양한 제품들을 소개하여 전반적인 개념을 이해하는데 큰 도움을 준다. 또한 앞서 이야기한 상세한 예제 코드를 통해 어떤 방식으로 적용되는지 빠르게 이해할 수 있도록 한다.

다양한 제품들을 소개한다는 측면에서는 어느정도 MLOps를 활용하고 있는 경우에도 큰 도움이 될 것이라 생각한다. 폭넓은 배경지식이나 상세한 예제 코드는 의미가 없을 순 있지만, 세부적인 기술 동향들을 파악하는 데는 충분히 의의가 있을 것이라 생각한다.


MLOps 실전 가이드의 제목은 현재 가장 뜨거운 키워드들인 ML(머신러닝)과 DevOps의 합성어이다. 머신러닝의 결과인 추론 모델을 지속적으로 업데이트 및 이를 이용한 서비스에 활용할 수 있는 기술을 소개하고 있으며, 이를 온프레미스가 아닌 퍼블릭 클라우드에서 가상 환경을 구성해 실습을 안내하고 있다.

 

Chat GPT로 인해 인공지능에 대한 관심이 다시금 높아져 있는 지금 AI 분야에서 일을 하고 있는 분들에게 꽤나 유용한 책이라고 생각한다. DevOps도 나름의 트랜드가 기술로 이를 제대로 구현한 기업을 찾기는 힘들 뿐더러 ML 분야 역시 제대로(?)된 인력을 구하기 힘든 분야라 이 분야를 공부하는 것은 상당히 자신의 가치를 높일 수 있는 좋은 기회가 될 것이다. 

 

그래서 먼저 선점해서 기술을 익힌다면, 가까운 미래에 자신의 몸값을 올리는데 큰 역할을 하지 않을까 싶다.

다만 한 가지 조금은 아쉬운 점은 이 책의 원서 초판은 2021년에 출간되었다는 점이다. 

어차피 2021년의 내용이어도 현재 이 기술을 제대로 구사하는 곳은 거의 없을 것이라고 확신하기 때문에, 원서 초판의 시기는 크게 아쉬운 점은 아니라고 생각한다. 

 

 

이 책은 MLOps가 무엇인지 이를 설명과 함께 필요한 기술 요소들을 설명하고 있어, 기초를 잡기에도 좋다고 생각이 든다.  리눅스, 클라우드, 컨테이너와 모델 패키징 등의 설명도 다루고 있다.

 

​그리고 파이프라인을 설명하는데 분량이 약간 짧은 감이 있지만,  Feature에 대한 최적화 과정을 AutoML과 KaizenML 이라는 기술로 자동화 시키며 이를 위한 모니터링 기술, AWS, Azure, GCP를 이용한 MLOps 구축을 친절히 설명하기 때문에 충분히 매력적인 책이다.

 

​ 마지막으로 좋았던 부분은 마이크로서비스 구축이라던지, 실사례 연구에 대해 설명하는 부분이 있어 이러한 점은 실제 MLOps를 구축할 때 도움이 많이 될 수밖에 없다는 생각이 든다.

 

 

  "한빛미디어 <나는 리뷰어다> 활동을 위해서 책을 제공받아 작성된 서평입니다."

결제하기
• 문화비 소득공제 가능
• 배송료 : 2,000원배송료란?

배송료 안내

  • 20,000원 이상 구매시 도서 배송 무료
  • 브론즈, 실버, 골드회원 무료배송
닫기

리뷰쓰기

닫기
* 상품명 :
MLOps 실전 가이드
* 제목 :
* 별점평가
* 내용 :

* 리뷰 작성시 유의사항

글이나 이미지/사진 저작권 등 다른 사람의 권리를 침해하거나 명예를 훼손하는 게시물은 이용약관 및 관련법률에 의해 제재를 받을 수 있습니다.

1. 특히 뉴스/언론사 기사를 전문 또는 부분적으로 '허락없이' 갖고 와서는 안됩니다 (출처를 밝히는 경우에도 안됨).
2. 저작권자의 허락을 받지 않은 콘텐츠의 무단 사용은 저작권자의 권리를 침해하는 행위로, 이에 대한 법적 책임을 지게 될 수 있습니다.

오탈자 등록

닫기
* 도서명 :
MLOps 실전 가이드
* 구분 :
* 상품 버전
종이책 PDF ePub
* 페이지 :
* 위치정보 :
* 내용 :

도서 인증

닫기
도서명*
MLOps 실전 가이드
구입처*
구입일*
부가기호*
부가기호 안내

* 온라인 또는 오프라인 서점에서 구입한 도서를 인증하면 마일리지 500점을 드립니다.

* 도서인증은 일 3권, 월 10권, 년 50권으로 제한되며 절판도서, eBook 등 일부 도서는 인증이 제한됩니다.

* 구입하지 않고, 허위로 도서 인증을 한 것으로 판단되면 웹사이트 이용이 제한될 수 있습니다.

닫기

해당 상품을 장바구니에 담았습니다.이미 장바구니에 추가된 상품입니다.
장바구니로 이동하시겠습니까?

자료실

최근 본 상품1