1. 광고배너
  2. 광고배너
/ 이전버튼 다음버튼
2
미리보기

쿠버네티스로 구현하는 머신러닝 - 오픈소스 기반 머신러닝 플랫폼 구축과 활용(에이콘 클라우드 컴퓨팅 시리즈)
저자 : 파이살 마수드,로스 브리골리 ㅣ 출판사 : 에이콘출판 ㅣ 역자 : 최준

2024.01.30 ㅣ 424p ㅣ ISBN-13 : 9791161758183

정가35,000
판매가33,250(5% 할인)
적립금 1,400원 (4%)
배송일정 오늘 출고 가능
주문 수량 변경시 안내 배송안내
쿠폰 및 결제혜택 확인하기

크기 기타 규격
제품구성 단행본
이용약관 청약철회
국내도서 > 컴퓨터 > 시스템공학 > 소프트웨어공학
머신러닝은 더 이상 일부 전문가들의 영역이 아니며, 머신러닝의 구현과 운영 모두 여러 분야에서 축적된 경험을 바탕으로 생산적으로 발전해왔다. 이 과정에서 MLOps(Machine Learning Operations)는 기존의 소프트웨어와 시스템의 통합 운영 기술을 도입하고, 머신러닝을 위한 표준 프로세스를 적용해서 최적화해왔다. 쿠버네티스를 포함한 오픈소스 도구들을 통해 이 변화를 탐험해보자.
펼쳐보기

[목 차]

1부. 머신러닝 도입의 문제점과 MLOps의 이해(정의와 근거)

1장. 머신러닝의 도전 과제
__머신러닝 이해하기
__머신러닝 가치의 실현
__올바른 접근법 선택
____데이터의 중요성
__머신러닝 도입의 도전 과제
____큰 그림에만 집착하기
____사일로 살펴보기
____빠른 실패 문화
__머신러닝 플랫폼 개요
__요약
__더 알아보기


2장. MLOps 이해하기
__머신러닝과 기존 프로그래밍의 비교
__DevOps의 장점 알아보기
__MLOps 이해하기
____머신러닝
____DevOps
____머신러닝 프로젝트 라이프사이클
____빠른 피드백 루프
____프로젝트 라이프사이클에서의 협업
__머신러닝 프로젝트에서의 OSS 역할
__쿠버네티스에서 머신러닝 프로젝트 운영
__요약
__더 알아보기


3장. 쿠버네티스 탐험
__기술 요구 사항
__쿠버네티스 주요 구성 요소 살펴보기
____제어 영역
____작업자 노드
____앱의 실행을 위한 쿠버네티스 객체
__쿠버네티스로 클라우드 사용자되기
__오퍼레이터 이해하기
__로컬 쿠버네티스 환경 설정하기
____kubectl 설치
____minikube 설치
____OLM 설치
__구글 클라우드 플랫폼의 가상머신 준비하기
__요약


2부. MLOps 플랫폼의 작업 영역과 쿠버네티스로 만드는 방법

4장. 머신러닝 플랫폼의 구조
__기술 요구 사항
__셀프서비스 플랫폼 정의
__데이터 엔지니어링 구성 요소 알아보기
____데이터 엔지니어 워크플로
__모델 개발 구성 요소 알아보기
____데이터 과학자의 워크플로 이해하기
__보안, 모니터링과 자동화
__ODH 소개
____쿠버네티스에 ODH 오퍼레이터 설치
____쿠버네티스 클러스터에 인그레스 제어기 활성화
____쿠버네티스에 Keycloak 설치
__요약
__더 알아보기


5장. 데이터 엔지니어링
__기술 요구 사항
__인증을 위한 Keycloak 설정
____ODH 구성 요소에 대한 Keycloak 설정 가져오기
____Keycloak 사용자 생성
__ODH 구성 요소 설정
____ODH 설치
__주피터허브의 이해와 활용
____주피터허브 설치 확인하기
____첫 번째 주피터 노트북 실행
__아파치 스파크의 기초 이해
____아파치 스파크 작업 실행 이해하기
__ODH로 아파치 스파크 클러스터를 필요할 때 제공하는 방법
____스파크 클러스터 생성
____주피터허브로 스파크 클러스터를 생성하는 방법
__주피터 노트북에서 스파크 앱을 만들어서 실행하기
__요약


6장. 머신러닝 엔지니어링
__기술 요구 사항
__머신러닝 엔지니어링 이해
__사용자 노트북 이미지 사용
____사용자 노트북 컨테이너 이미지 만들기
__MLflow 소개
____MLflow 구성 요소 이해
____MLflow 설치 확인하기
__시험 추적 시스템용 MLflow
____시험 실행에 사용자 데이터 추가
__모델 레지스트리 시스템으로서 MLflow
__요약


7장. 모델 배포와 자동화
__기술 요구 사항
__셀돈 코어를 사용한 모델 추론의 이해
____파이썬을 사용한 모델 래핑
____모델을 컨테이너로 만들기
____셀돈 코어 컨트롤러로 모델 배포하기
__셀돈 코어를 사용한 모델의 패키징, 실행, 모니터링
__아파치 Airflow 소개
____DAG 이해
____Airflow 기능 탐험
____Airflow 구성 요소 이해
____Airflow 설치 확인하기
____Airflow DAG 리포지터리 설정
____Airflow 런타임 이미지 설정
__Airflow에서 머신러닝 모델 배포의 자동화
____파이프라인 편집기로 파이프라인 생성하기
__요약


3부. MLOps와 새로운 플랫폼을 사용한 전체 프로젝트 빌드

8장. 우리의 플랫폼을 사용한 전체 머신러닝 프로젝트 만들기
__머신러닝 플랫폼의 전체 그림 보기
__사업적 과제의 이해
__데이터 수집, 처리, 정제
____데이터 소스, 경로, 형식의 이해
____데이터 처리와 정제의 이해
__예비 데이터 분석 수행
____데이터 샘플 이해
__피처 엔지니어링의 이해
____데이터 증강
__머신러닝 모델의 빌드와 평가
____데이터 평가 기준
____모델 빌드
____모델 배포
__재현 가능성
__요약


9장. 데이터 파이프라인 만들기
__기술 요구 사항
__개발을 위한 스파크 클러스터 자동 제공
__스파크 데이터 파이프라인 작성
____실행 환경 준비
____데이터 이해하기
____파이프라인 설계와 제작
____데이터 파이프라인을 모니터하는 스파크 화면 사용
__Airflow를 사용한 데이터 파이프라인 제작과 실행
____데이터 파이프라인 DAG 이해
____DAG 제작과 실행
__요약


10장. 모델의 제작, 배포와 모니터링
__기술 요구 사항
__주피터허브를 사용한 데이터 시각화와 탐색
__주피터허브로 모델을 만들고 조정하기
__모델 시험 추적과 MLflow를 사용한 버전 관리
____모델 시험 추적
____모델 버전 관리
__모델을 서비스로 배포
____모델 호출하기
__모델 모니터하기
____모니터링 구성 요소의 이해
____그라파나와 대시보드 설정
__요약


11장. 쿠버네티스 기반의 머신러닝
__머신러닝 플랫폼 사례 검토
____AutoML 검토하기
____상업적 플랫폼
____ODH
__머신러닝 운영 최적화
____업무 기대치 설정
____지저분한 실제 데이터 처리
____부정확한 결과 처리
____CD 관리
____보안 관리
____규정 준수
____거버넌스 적용
__쿠버네티스 실행
____벤더 의존성 방지
____다른 쿠버네티스 플랫폼 검토
__로드맵
__요약
__더 알아보기
펼쳐보기
◈ 이 책에서 다루는 내용 ◈

◆ 머신러닝 프로젝트의 여러 단계별 이해
◆ 쿠버네티스 기반의 머신러닝 플랫폼 제작을 위한 오픈소스 소프트웨어 사용
◆ 머신러닝 플랫폼을 사용한 전체 머신러닝 프로젝트 구현
◆ 기업의 머신러닝을 위한 향상된 협업 과정
◆ 데이터 엔지니어, 머신러닝 엔지니어 또는 데이터 과학자 역할에 맞는 플랫폼 사용 방법
◆ 실제 업무 문제의 해결을 위한 머신러닝 적용 방법


◈ 이 책의 대상 독자 ◈

데이터 과학자, 데이터 엔지니어, IT 플랫폼 운영자, 인공지능 제품 서비스 책임자와 오픈소스 구성 요소로 머신러닝 플랫폼 제작을 원하는 데이터 설계 책임자를 위한 책이다. 파이썬(Python)과 쿠버네티스에 대한 이해와 데이터 사이언스 및 공학에 대한 기본 개념을 갖고 있다면 이 책이 다루는 주제를 파악하는 데 큰 도움이 될 것이다.


◈ 이 책의 구성 ◈

1장에서는 머신러닝 도입의 도전 과제를 다룬다. 기업이 머신러닝을 도입하면서 만나게 될 문제점과 머신러닝의 도입 취지를 계획대로 달성하지 못하는 이유를 논의한다. 또한 기업이 이러한 문제를 만나게 되는 몇 가지 이유를 살펴본다.
2장에서는 MLOps가 무엇인지 이해한다. 1장에서 다룬 머신러닝 도입의 문제점들에 이어서 머신러닝 도입에 어려움들을 어떻게 극복할 수 있는지 논의한다. 이 장에서는 MLOps란 무엇인지 정의하고, 기업이 MLOps 도입 취지를 달성할 수 있도록 돕는다. 또한 기업이 머신러닝 프로젝트를 통해 MLOps를 어떻게 도입하는지 청사진을 제시한다.
3장에서는 쿠버네티스를 살펴본다. 이 책에서 왜 쿠버네티스를 MLOps의 플랫폼으로 선택했는지 설명한다. 또한 쿠버네티스의 핵심 개념을 정의하고 코드를 테스트하기 위한 환경을 만들 수 있도록 도와준다. 세상이 빠르게 변하는 만큼 빠른 변화에 대한 대응도 클라우드와 클라우드 기반 솔루션의 일부다. 쿠버네티스 기반의 플랫폼을 통해 독자의 솔루션이 어디서나 동작하게 만드는 유연함을 어떻게 갖추는지 알아본다.
4장은 머신러닝 플랫폼의 구조를 다룬다. 머신러닝 플랫폼이 어떤 모습을 갖고 있는지 먼 발치에서 살펴볼 것이다. 4장은 기술의 이론적인 관점에서 MLOps 플랫폼 구성 요소를 정의한다. MLOps플랫폼의 핵심 구성 요소를 기초를 튼튼하게 익힐 것이다.
5장에서는 데이터 엔지니어링에 대해 살펴본다. 머신러닝 프로젝트에서 중요하지만 가끔 놓치기 쉬운 부분이다. 상당수의 머신러닝 입문서가 CSV 파일과 같이 자신만의 모델을 만들기 위한 깔끔한 데이터셋으로 시작하지만 현실은 다르다. 데이터는 다양한 모양과 크기를 갖고 있으며, 데이터 규모에 맞게 수집, 처리, 준비가 가능한 잘 정리된 전략이 중요하다. 이 장에서는 성공적인 머신러닝 프로젝트의 데이터 엔지니어링 역할을 정의한다. 데이터 엔지니어링의 기초가 되는 OSS 도구들을 논의할 것이다. 그리고 이러한 도구들을 쿠버네티스 플랫폼에 설치하는 방법을 다룬다.
6장에서는 머신러닝 엔지니어링에 대해 알아본다. 이제 머신러닝 개발 과정에서 모델을 제작하고 배포하는 작업으로 논의를 이어간다. 6장에서는 같은 플랫폼에서 데이터 과학자들이 더 효율적으로 데이터 엔지니어링 팀과 동료들이 협업할 수 있게 돕는 셀프서비스 솔루션을 논의한다. 또한 모델 개발을 위한 OSS 도구들을 다룬다. 그리고 이러한 도구들을 어떻게 쿠버네티스 플랫폼에 설치하는지 설명한다.
7장에서는 머신러닝 프로젝트 중에서 배포 단계를 다룬다. 직접 만들어 본 모델은 만든 사람이 제공한 데이터를 이미 알고 있다. 하지만 현실에서는 데이터가 변화한다. 이 장에서는 모델의 성능을 모니터하기 위한 도구와 기술을 논의한다. 성능 데이터를 사용해 새로운 데이터셋에 대한 재학습이 필요한지 또는 주어진 문제에 대한 새로운 모델이 필요한 시점인지 판단할 것이다.
8장에서는 플랫폼을 활용한 머신러닝 프로젝트 완성하는 방법에 대해 이야기한다. 전형적인 머신러닝 프로젝트에서 각각의 플랫폼 구성 요소를 프로젝트 단계별로 어떻게 활용하는지 정의한다. 이러한 프로젝트의 산출물과 요구 사항도 이 장에서 정의하고, MLOps가 어떻게 프로젝트를 용이하게 만드는지 주로 살펴본다.
9장에서는 스파크(Spark) 클러스터로 데이터를 어떻게 수집하고 처리하는지 보여줄 것이다. 또한 플랫폼이 어떻게 어느 저장소에서도 원시 데이터를 읽을 수 있도록 데이터 엔지니어를 돕는지 보여준다. 핵심은 스파크 클러스터가 필요시 어떻게 생성되며, 작업이 어떻게 공유된 환경에서 구분되는지 설명하는 것이다.
10장에서는 주피터허브(JupyterHub) 서버를 활용해서 어떻게 모델을 플랫폼을 기반으로 제작, 학습, 조정하는지 보여준다. 또한 이러한 플랫폼이 데이터 과학자가 스스로 동작하는 모델을 구현하는 과정을 어떻게 지원하는지 보여준다. 모델을 시험하고, 등록하는 구성 요소인 MLflow도 10장에서 소개한다. 잘 동작하는 모델이 있을 때, 이 모델을 어떻게 다른 팀에서 활용할 수 있게 만들까? 10장에서 셀돈 코어(Seldon Core) 구성 요소로 모델을 REST API 형태로 접근해 개발자가 아니어도 사용할 수 있게 만드는 방법을 보여줄 것이다. 또한 배포한 API에 대해서 쿠버네티스의 기능을 활용해 자동으로 용량을 확장하는 방법을 알아본다.
11장에서는 쿠버네티스 기반의 머신러닝에 대해 독자가 더 깊이 알아야 할 핵심적인 개념을 소개한다. 11장에서 머신러닝 플랫폼과 머신러닝의 안정화, 쿠버네티스 운영에 대한 실제 사례들을 다룬다.

작가의 말
머신러닝(Machine Learning)이 다시 유행하고 있다. 각 기업은 머신러닝을 채택하고 기능을 향상시켜 새로운 제품을 만들거나 고객 응대 능력을 개선한다. 이 책의 주제는 머신러닝의 갖가지 장점을 통해 기업이나 팀에서 사업적 가치를 얻어낼 수 있도록 돕는 것이다. MLOps를 쿠버네티스(Kubernates)로 구현해 데이터 과학자와 IT 운영 전문가 그리고 데이터 엔지니어가 협업해 업무에 실제로 도움이 되는 머신러닝 솔루션을 만들 수 있을 것이다. 이 책은 머신러닝 프로젝트 전반에 걸쳐서 소프트웨어 공학적인 규칙을 가지고 팀이 협업할 수 있도록 실용적인 접근을 시도한다.
먼저 MLOps가 왜 중요하고, 머신러닝 프로젝트 구성 요소의 차이점이 무엇인지 알아보는 것으로 시작할 것이다. 이 책의 후반부에는 가장 인기 있는 OSS(Open Source Software) 구성 요소를 사용해 실용적인 머신러닝 프로젝트를 전체적으로 설계하고 제작해볼 것이다. 이 책을 따라가면서 MLOps의 기본과 머신러닝 프로젝트가 제공하는 장점에 더 익숙해질 것이고, 오픈소스와 쿠버네티스 클러스터로 구성된 머신러닝 플랫폼을 만들어 설정하고, 사용해보는 경험을 얻을 것이다. 결국 데이터를 어떻게 준비하고, 모델을 빠르게 빌드해 배포하고, 일반적인 플랫폼에서 효율적으로 머신러닝 파이프라인을 구성하기 위한 작업을 자동화하는 방법을 배울 것이다. 이 책의 예제를 통해 쿠버네티스를 기반으로 주피터허브(JupyterHub), MLflow, Airflow 등의 OSS와 통합하는 실습을 해볼 것이다.
이 책을 마치고 나면 직접 제작한 머신러닝 플랫폼으로 머신러닝 모델을 효과적으로 제작해 학습, 배포할 수 있을 것이다.

옮긴이의 말
한두 가지 공부해서 잘해도 살아가는 데 별 어려움이 없다면, 얼마나 더 삶이 여유로울까? 적어도 IT 분야에서 20년 넘게 일하면서 이미 오래전에 이 질문에 관한 결론을 봤다. 20년 전에 알고 있던 여러 지식과 기술 대부분은 이제 프로필에 적지도 않는다. 그때를 기억해보면, 윈도우 NT부터 윈도우 2003 서버의 제어를 위한 레지스트리 키와 배치 스크립트가 많지만, 기억의 저편에서 사라지고 있다. 그리고 여전히 다양한 기술이 앞서 변화하는 모습을 보며 뒤에서 따라잡고 있다.
지금의 데브옵스(DevOps)는 앱의 개발, 테스트, 배포, 운영 과정을 매끄럽게 관리하는 중요한 플랫폼이고 머신러닝 또한 코드와 데이터, 모델 등이 동작하는 플랫폼에서 다양한 소프트웨어와 데이터 처리 기술을 활용한다. 갑자기 팀원 누군가에게 위의 두 가지 플랫폼의 운영을 맡긴다면 어떤 표정을 볼 수 있을까? 머신러닝, 앱 관리, 클라우드 인프라, 운영 지식 모두를 배워서 만들어야 한다면, 이 책은 몇 배 더 두꺼워야 하며, 기꺼이 배우고 운영할 마음도 쉽게 생기지 않을 것이다.
정신적으로 그리고 시간적으로도 여유 있는 삶을 아직도 고민하는 입장에서 생각해보면 결국 작업의 생산성을 높이는 것이 해답에 가까운 것으로 보인다. 머신러닝 분야에서는 이 책에 등장하는 MLOps가 생산성을 높이는 운영 방식으로서 조금 더 구체적인 실마리를 준다. 또한 고맙게도 이런 고민에 공감한 수많은 개발자의 노력으로 많은 도구가 심지어 오픈소스로 등장했다. MLOps를 실현하기 위한 인프라는 쿠버네티스에게 우리가 원하는 인프라를 특정 형식으로 표현해주면 그 인프라를 쿠버네티스가 구현해준다.
여러 소프트웨어 기술 이외에도 생산성을 높이는 또 하나의 핵심 요소는 소통이다. 손발이 잘 맞는 팀들은 서로에게 무엇을 요구해야 하는지, 요구사항을 받으면 어떤 선택지를 제시해야 하는지 잘 이해하고 있다. 이러한 조직의 팀 사이 어딘가에 존재하는 애매한 부분을 세련된 도구로 채울 수 있다면, 밝은 표정으로 출근할 수 있는 날이 많아질 것이다. MLOps가 머신러닝 시스템을 설계, 개발 또는 운영하는 팀, 데이터 과학자에게 이러한 존재다. 시스템의 완성을 위해 무엇을 서로 채워야 할지 이 책에서 제시하는 내용을 참고하길 바란다.

펼쳐보기
파이살 마수드
레드햇의 수석 설계자다. 지금까지 오픈시프트와 레드햇의 기업용 쿠버네티스 서비스를 활용해 데이터 사이언스, 앱 플랫폼을 설계하고 제작하는 일을 지원했다. 소프트웨어 제작에 20년이 넘는 경험이 있고, 쿠버네티스가 등장하기 전부터 마이크로서비스를 만들었다.

로스 브리골리
레드햇의 책임 설계자다. 다양한 분야에서 18년 이상 소프트웨어를 설계하고 제작해왔다. 데이터 플랫폼과 워크플로우 자동화 플랫폼을 설계하고 제작했다. 레드햇에 오기 전에는 금융 서비스 분야에서 데이터 엔지니어링 팀을 책임지는 설계 담당자로 일했다. 현재는 오픈시프트를 기반으로 마이크로서비스 아키텍처와 머신러닝 솔루션을 설계, 제작하는 일을 하고 있다.

옮긴이 최준
기계공학을 전공했던 학창시절에 누구에게나 매력 덩어리였던 컴퓨터로 기계의 데이터를 처리하고 동작을 제어하는 과정에서 흥미를 갖게 돼 정보기술 분야에 뛰어들었다. 2001년부터 마이크로소프트 한국, 싱가폴 지사에서 근무하고 아시아 지역 200여 개의 글로벌 기업 현장에서 기술 지원을 수행하면서 다양한 기업용 IT 솔루션의 문제를 이해하고, 해결 방안을 찾는 소중한 경험을 갖게 됐다. 이후에는 여러 프로젝트에서 .NET 기반의 C# 개발자로서 상용 프로그램을 공급하는 즐거움도 누릴 수 있었다. 현재는 캐나다에 IT 컨설팅 회사를 설립하고, 기업 고객에게 필요한 소프트웨어 개발과 컨설팅 서비스를 제공하고 있다.

펼쳐보기

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.

독자서평 쓰기 로그인을 하시면 독자서평을 쓰실 수 있습니다.
도서평점
내용
등록하기
0/2000자
교환/반품 방법
  • 마이페이지 > 주문관리 > 주문/배송조회 > 주문조회 후  [1:1상담신청]  또는 고객센터 (1544-9020)
  • ※ 오픈마켓, 해외배송 주문상품 문의 시 [1:1상담신청] 또는 고객센터 (1544-9020)
교환/반품 가능기간
  • 변심반품의 경우 수령 후 7일 이내
  • 상품의 결함 및 계약내용과 다를 경우 문제점 발견 후 30일 이내
교환/반품 비용
  • 단순변심 혹은 구매착오로 인한 반품/교환은 반송료 고객 부담
  • 해외직배송 도서 구매 후 단순변심에 의한 취소 및 반품 시 도서판매가의 20% 수수료 부과
교환/반품 불가사유
  • 소비자의 책임 있는 사유로 상품 등이 손실 또는 훼손된 경우
  • 소비자의 사용, 포장 개봉에 의해 상품 등의 가치가 현저히 감소한 경우 예) 만화, 잡지, 수험서 및 문제집류
  • 복제가 가능한 상품 등의 포장을 훼손한 경우 예) 음반/DVD/비디오, 소프트웨어, 만화책, 잡지, 영상 화보집
  • 소비자의 요청에 따라 개별적으로 주문 제작되는 상품의 경우
  • 디지털 컨텐츠인 eBook, 오디오북 등을 1회 이상 다운로드를 받았을 경우
  • 시간의 경과에 의해 재판매가 곤란한 정도로 가치가 현저히 감소한 경우
  • 전자상거래 등에서의 소비자보호에 관한 법률이 정하는 소비자 청약철회 제한 내용에 해당되는 경우
상품 품절
  • 공급사(출판사) 재고 사정에 의해 품절/지연될 수 있으며, 품절 시 관련 사항에 대해서는 이메일과 문자로 안내드리겠습니다.
소비자 피해보상
환불지연에 따른 배상
  • 상품의 불량에 의한 교환, A/S, 환불, 품질보증 및 피해보상 등에 관한 사항은 소비자분쟁 해결 기준 (공정거래위원회 고시)에 준하여 처리됨
  • 대금 환불 및 환불지연에 따른 배상금 지급 조건, 절차 등은 전자상거래 등에서의 소비자 보호에 관한 법률에 따라 처리함

이 분야의 베스트

더보기 >

    이 분야의 신간

    더보기 >
      맨위로가기

      영풍문고 로고

      • 회사명 : (주)영풍문고
      • 대표이사 : 김경환
      • 소재지 : 서울특별시 종로구 청계천로 41 (우)03188
      • 사업자 등록번호 : 773-86-01800 ㅣ 통신판매업 신고번호 : 2023-서울종로-0130 [ 사업자정보확인 ]
      • 개인정보관리 책임자 : 조순제 ㅣ customer@ypbooks.co.kr ㅣ 대량주문 : webmaster@ypbooks.co.kr
      COPYRIGHT © YOUNGPOONG BOOKSTORE INC. ALL RIGHTS RESERVED.
      영풍문고 네이버블로그 영풍문고 인스타그램
      맨위로가기