1장 머신러닝 시스템 개요
1.1 머신러닝을 사용해야 하는 경우
1.2 머신러닝 시스템 이해하기
1.3 정리
2장 머신러닝 시스템 설계 소개
2.1 비즈니스와 머신러닝의 목적
2.2 머신러닝 시스템 요구 사항
2.3 반복 프로세스
2.4 머신러닝 문제 구조화하기
2.5 지성 vs. 데이터
2.6 정리
3장 데이터 엔지니어링 기초
3.1 데이터 소스
3.2 데이터 포맷
3.3 데이터 모델
3.4 데이터 스토리지 엔진 및 처리
3.5 데이터플로 모드
3.6 배치 처리 vs. 스트림 처리
3.7 정리
4장 훈련 데이터
4.1 샘플링
4.2 레이블링
4.3 클래스 불균형 문제
4.4 데이터 증강
4.5 정리
5장 피처 엔지니어링
5.1 학습된 피처 vs. 엔지니어링된 피처
5.2 피처 엔지니어링 기법
5.3 데이터 누수
5.4 좋은 피처를 설계하는 방법
5.5 정리
6장 모델 개발과 오프라인 평가
6.1 모델 개발과 훈련
6.2 모델 오프라인 평가
6.3 정리
7장 모델 배포와 예측 서비스
7.1 머신러닝 배포에 대한 통념
7.2 배치 예측 vs. 온라인 예측
7.3 모델 압축
7.4 클라우드와 에지에서의 머신러닝
7.5 정리
8장 데이터 분포 시프트와 모니터링
8.1 머신러닝 시스템 장애 원인
8.2 데이터 분포 시프트
8.3 모니터링과 관찰 가능성
8.4 정리
9장 연속 학습과 프로덕션 테스트
9.1 연속 학습
9.2 프로덕션에서 테스트하기
9.3 정리
10장 MLOps를 위한 인프라와 도구
10.1 스토리지와 컴퓨팅
10.2 개발 환경
10.3 자원 관리
10.4 머신러닝 플랫폼
10.5 구축 vs. 구매
10.6 정리
11장 머신러닝의 인간적 측면
11.1 사용자 경험
11.2 팀 구조
11.3 책임 있는 AI
11.4 정리
현업에서 필요했던 ‘진짜’ 머신러닝 이야기
머신러닝이라고 하면 보통 모델 개발과 알고리즘을 떠올리지만 실제로 프로덕션 환경에서 머신러닝을 운영할 때는 그 외에도 고려할 것이 많습니다. 머신러닝 시스템을 이루고 있는 데이터, 피처, 모델 개발·평가·배포, 모니터링, 인프라 등을 전체적인 관점에서 고려해야 합니다. 프로덕션용 머신러닝은 대부분 비즈니스를 중심으로 하는 만큼 비즈니스 문제에 따른 요구 사항과 이해관계자 또한 중요합니다.
이 책은 떠오르는 MLOps 분야의 대표 강의인 스탠퍼드 ‘CS329S: 머신러닝 시스템 설계(Machine Learning Systems Design’를 기반으로 합니다. 저자인 칩 후옌은 넷플릭스부터 스타트업까지 다양한 기업에서 머신러닝을 배포하고 운영한 경험을 바탕으로, 여러분이 그동안 궁금했지만 답을 찾기 어려웠을 법한 질문에 대해 여러 가지 접근법을 제시합니다. 특정 도구 사용법보다는 각 머신러닝 기법의 개념 및 장단점과 트레이드오프에 집중하며, 더 필요한 정보는 바로 찾아볼 수 있도록 풍부한 참고 자료 링크를 제공합니다.
대상 독자
머신러닝 관련 실무자: 머신러닝 엔지니어, 데이터 과학자, 머신러닝 플랫폼 엔지니어, 엔지니어링 관리자 등
도구 개발자: 머신러닝 프로덕션에서 서비스가 부족한 영역을 찾아내 생태계에 맞는 도구를 만들어 넣을 방안을 파악하려는 경우
구직자 및 학생: 머신러닝 관련 직무로 취업하려는 경우
기술 및 비즈니스 리더: 제품 및 비즈니스 프로세스를 개선하기 위해 머신러닝 솔루션 채택을 고려하는 경우
장별 주요 내용
[1장 머신러닝 시스템 개요]
다양한 머신러닝 유스 케이스를 살펴보면서 머신러닝을 적용하기에 적합한 경우와 그렇지 않은 경우를 논의합니다. 프로덕션용 머신러닝을 연구용 머신러닝 및 전통적인 소프트웨어와 비교해봅니다.
[2장 머신러닝 시스템 설계 소개]
비즈니스 목적에 따라 시스템 요구 사항을 정하고, 이를 만족하는 머신러닝 시스템을 설계하기 위한 반복 프로