이미 소장하고 있다면 판매해 보세요.
|
PART 1. 머신러닝의 기초
Chapter 1. 머신러닝 소개 __머신러닝이란? __일반적인 데이터 과학 도구들 ____용어 설명 ____머신러닝 실제 사례 __머신러닝의 종류 ____지도 학습 ____비지도 학습 ____준지도 학습 ____강화 학습 ____배치 학습 ____점진 학습 ____사례 기반 학습 ____모델 기반 학습 __머신러닝 접근 방식 vs 전통적인 접근 방식 ____규칙 기반 의사 결정 시스템 ____머신러닝 기반 시스템 ____피처 선택하기 ____훈련 데이터와 테스트 데이터 준비하기 ____머신러닝 모델 선정 ____모델 성능 평가 __요약 Chapter 2. 데이터 수집 및 전처리 __머신러닝 데이터셋 ____Scikit-learn 데이터셋 ____아마존 웹서비스 공개 데이터셋 ____Kaggle.com 데이터셋 ____UCI 머신러닝 저장소 __데이터 전처리 기법 ____데이터 탐색 ____결측값 다루기 ____새로운 피처 생성하기 ____수치형 피처 변환하기 ____범주형 피처 원-핫 인코딩 __요약 Chapter 3. 파이썬 데이터 시각화 __Matplotlib 소개 __Plot의 구성 요소 ____Figure 객체 ____Axes ____Axis ____Axis Label ____Grid ____Title __일반적인 Plot의 종류 ____Histogram ____Bar Chart ____Grouped Bar Chart ____Stacked Bar Chart ____Stacked Percentage Bar Charts ____Pie Chart ____Box Plot ____산점도 __요약 Chapter 4. Scikit-learn으로 머신러닝 모델 생성 __Matplotlib 소개 __훈련 데이터와 테스트 데이터로 나누기 ____k겹 교차검증 __머신러닝 모델 생성 ____선형회귀 ____서포트 벡터 머신 ____로지스틱회귀 ____의사 결정 나무 __요약 Chapter 5. 머신러닝 모델 평가 __회귀 모델 평가 ____RMSE 지표 ____R² 지표 __분류 모델 평가 ____이진 분류 모델 ____다중 분류 모델 __하이퍼파라미터 선택 __요약 PART 2. 머신러닝과 AWS Chapter 6. AWS 소개 __클라우드 컴퓨팅 소개 __클라우드 서비스 모델 __클라우드 배포 모델 __AWS 생태계 ____머신러닝 애플리케이션 서비스 ____머신러닝 플랫폼 서비스 ____지원 서비스 __AWS 프리 티어 계정 가입하기 ____1단계: 연락처 정보 ____2단계: 결제 정보 ____3단계: 자격 증명 확인 ____4단계: 지원 플랜 선택 ____5단계: 등록 확인 __요약 Chapter 7. AWS 글로벌 인프라 __리전과 가용 영역 __엣지 로케이션 __AWS 접속 ____AWS 관리 콘솔 __요약 Chapter 8. 자격 증명 및 접속 관리 __IAM 주요 개념 ____루트 계정 ____IAM 사용자 ____자격 증명 페더레이션 ____IAM 그룹 ____IAM 정책 ____IAM 역할 __일반적인 작업 ____IAM 사용자 생성 ____기존 그룹 권한 수정 ____IAM 역할 생성 ____루트 계정에 MFA 적용 ____IAM 비밀번호 정책 __요약 Chapter 9. Amazon S3 __Amazon S3 주요 개념 ____버킷 ____객체 키 ____객체 값 ____버전 ID ____스토리지 클래스 ____비용 ____객체 하위 리소스 ____객체 메타데이터 __일반적인 작업 ____버킷 생성 ____객체 업로드 ____객체 접근 ____객체의 스토리지 클래스 변경 ____객체 삭제 ____Amazon S3 버킷 버저닝 ____AWS CLI로 Amazon S3 접속 __요약 Chapter 10. Amazon Cognito __Amazon Cognito 주요 개념 ____인증 ____권한 부여 ____자격 증명 공급자 ____클라이언트 ____OAuth 2.0 ____OpenID Connect ____Amazon Cognito 사용자 풀 ____자격 증명 풀 ____Amazon Cognito 연동 자격 증명 __일반적인 작업 ____사용자 풀 생성 ____앱 클라이언트 보안키 확인 ____자격 증명 풀 생성 __사용자 풀과 자격 증명 풀 선택하기 __요약 Chapter 11. Amazon DynamoDB __Amazon DynamoDB 주요 개념 ____테이블 ____전역 테이블 ____항목 ____속성 ____기본 키 ____보조 인덱스 ____쿼리 ____스캔 ____읽기 일관성 ____읽기/쓰기 용량 모드 __일반적인 작업 ____테이블 생성 ____테이블에 항목 추가 ____인덱스 생성 ____스캔 실행 ____쿼리 실행 __요약 Chapter 12. AWS Lambda __Amazon Lambda 사용 사례 __AWS Lambda 주요 개념 ____지원 프로그래밍 언어 ____Lambda 함수 ____프로그래밍 모델 ____이벤트 ____실행 환경 ____서비스 제한 ____가격과 가용성 __일반적인 작업 ____AWS 관리 콘솔로 Python Lambda 함수 생성하기 ____AWS 관리 콘솔로 Lambda 함수 테스트하기 ____AWS 관리 콘솔로 Lambda 함수 삭제하기 __요약 Chapter 13. Amazon Comprehend __Amazon Comprehend 주요 개념 ____자연어 처리 ____토픽 모델링 ____지원 언어 ____가격 정책 및 가용성 __Amazon Comprehend 관리 콘솔로 텍스트 분석하기 __AWS CLI로 대화형 텍스트 분석하기 ____AWS CLI로 엔티티 검출 ____AWS CLI로 주요 문구 검출 ____AWS CLI로 감성 분석 __Amazon Comprehend를 위한 AWS Lambda 함수 생성 __요약 Chapter 14. Amazon Lex __Amazon Comprehend 주요 개념 ____봇 ____클라이언트 애플리케이션 ____인텐트 ____슬롯 ____어터런스 ____프로그래밍 모델 ____가격 정책 및 가용성 __Amazon Lex 챗봇 구축하기 ____Amazon DynamoDB 테이블 생성 ____AWS Lambda 함수 생성 ____챗봇 생성 ____AccountOverview 인텐트 설정 ____ViewTransactionList 인텐트 설정 ____챗봇 테스트 __요약 Chapter 15. Amazon SageMaker __Amazon SageMaker 주요 개념 ____프로그래밍 모델 ____Amazon SageMaker 노트북 인스턴스 ____훈련 작업 ____예측 인스턴스 ____예측 엔드포인트와 엔드포인트 구성 ____Amazon SageMaker 배치 변환 ____데이터 채널 ____데이터 위치와 형식 ____기본 제공 알고리즘 ____가격 정책 및 가용성 __Amazon SageMaker 노트북 인스턴스 생성하기 ____훈련 데이터와 테스트 데이터 준비하기 __Amazon SageMaker 노트북 인스턴스에서 Scikit-Learn 모델 훈련하기 __훈련 전용 인스턴스에서 Scikit-Learn 모델 훈련하기 __훈련 전용 인스턴스에서 기본 제공 알고리즘 모델 훈련하기 __요약 Chapter 16. Amazon SageMaker에서 TensorFlow 사용하기 __Google TensorFlow 소개 __Google TensorFlow로 선형회귀 모델 생성 __TensorFlow Estimator API와 Amazon SageMaker를 이용한 DNN 모델 훈련 및 배포 __요약 Chapter 17. Amazon Rekognition __Amazon Rekognition 주요 개념 ____객체 감지 ____객체 위치 검출 ____장면 감지 ____활동 감지 ____얼굴 인식 ____얼굴 모음 ____API 집합 ____비스토리지 및 스토리지 기반 작업 ____모델 버전 관리 ____가격 정책 및 가용성 __Amazon Rekognition 관리 콘솔을 이용한 이미지 분석 __AWS CLI를 이용한 이미지 분석 __Amazon Rekognition과 AWS Lambda로 작업하기 ____Amazon DynamoDB 테이블 생성 ____AWS Lambda 함수 생성 __요약 Appendix A. Anaconda와 Jupyter Notebook 설정 Appendix B. 실습에 필요한 AWS 자원 설정 Appendix C. AWS CLI 설치 및 구성 Appendix D. NumPy와 Pandas 소개 |
|
★ 요약 ★
한 권의 책으로 머신러닝 기초 개념부터 AWS의 머신러닝 서비스를 한번에 훑어볼 수 있으며, 크게 두 부분으로 나눠 설명한다. 1장부터 8장까지 전반부에서는 머신러닝의 기본 개념부터 데이터 수집, 전처리와 시각화, Scikit-learn을 통한 머신러닝 모델 생성과 모델 평가 방법을 다루며, 9장부터 17장까지는 Amazon S3를 시작으로 Comprehend, Lex, Rekognition 등 AWS의 주요 머신러닝 서비스를 간단한 실습과 함께 소개하고 AWS의 머신러닝 서비스 중 가장 핵심이 되는 SageMaker를 두 개의 장에 걸쳐 설명한다. ★ 이 책에서 다루는 내용 ★ ■ 기본적인 머신러닝 개념과 NumPy, Pandas, Scikit-learn 사용법 ■ Matplotlib을 활용한 데이터 시각화 ■ Amazon SageMaker를 활용한 머신러닝 모델 구축 및 배포 ■ Amazon Lex, Amazon Comprehend, Amazon Rekognition 사용법 ■ Amazon S3, Amazon DynamoDB, Amazon Cognito, AWS Lambda와 같은 기본적 AWS 서비스 사용법 AWS 클라우드상에서 파이썬을 활용해 머신러닝 모델을 구축하고 학습시키는 과정과 Amazon Rekognition, Amazon Comprehend, Amazon Lex와 같은 AWS 머신러닝 서비스를 다룬다. 또한 피처 엔지니어링, 데이터 시각화와 같은 일반적인 머신러닝 개념과 머신러닝 시스템을 구축하는 데 사용하는 Amazon IAM, Amazon Cognito, Amazon S3, Amazon DynamoDB, AWS Lambda와 같은 AWS 서비스를 다룬다. 책에서 사용한 모델 생성과 평가 코드는 Python 3로 작성했다. 아마존, 애플, 구글과 같은 회사가 제공하는 서비스는 자주 업데이트되기 때문에 책을 따라 실습하다가 새로운 화면을 만나는 경우가 종종 있을 수 있다. ★ 이 책의 대상 독자 ★ 머신러닝을 배우고 AWS가 제공하는 머신러닝 관련 서비스를 활용해보려는 소프트웨어 개발자에게 적합한 책이다. AWS의 서비스 중 많이 사용되는 머신러닝 관련 서비스를 알고 싶은 데이터 과학자, 시스템 설계자, 애플리케이션 설계자에게도 유용할 것이다. 머신러닝과 AWS 모두가 생소하다면 책의 처음부터 끝까지 차례로 읽기를 권한다. 경험이 많은 데이터 과학자라면 책의 후반부인 AWS의 머신러닝 관련 서비스를 다루는 장으로 바로 넘어가도 좋다. ★ 이 책의 구성 ★ 총 17개 장을 포함하는 2개의 파트와 4개의 부록으로 구성돼 있다. 첫 번째 파트는 5개 장으로 구성돼 있으며 피처 엔지니어링, 데이터 시각화, 모델 생성과 평가 같은 머신러닝을 위한 기법을 파이썬의 Pandas, NumPy, Matplotlib, Scikit-learn을 활용해 설명한다. 첫 번째 파트의 예제는 Jupyter Notebook을 사용하며, 머신러닝을 처음 접하는 독자를 대상으로 한다. 두 번째 파트는 AWS 서비스를 사용해 머신러닝 애플리케이션을 구축하는 방법을 다룬다. 먼저 Amazon S3, Amazon DynamoDB, AWS Lambda와 같은 기본 서비스를 소개하고, Amazon Comprehend, Amazon Lex, Amazon SageMaker와 같은 머신러닝과 밀접한 AWS 서비스를 소개한다. 두 장에 걸쳐 Amazon SageMaker를 자세히 다루며, 처음 장에서는 내장 알고리즘과 Scikit-learn을 이용한 모델 생성 및 배포 방법을 소개한다. 두 번째 장에서는 Google TensorFlow를 이용한 모델 생성 및 배포 방법을 다룬다. 두 번째 파트의 일부 장에서는 전체 소스 코드가 책에 표시되지 않지만 전체 코드를 깃허브(GitHub)에서 다운로드할 수 있다. 또한 실습을 위해 일부 장에서는 Amazon S3에 파일을 업로드해야 하며, 각자의 계정에 맞게 버킷의 이름을 변경해야 한다. 1부. 머신러닝의 기초 1장, ‘머신러닝 소개’에서는 머신러닝 시스템과 애플리케이션, 머신러닝 애플리케이션을 구축하는 데 필요한 도구를 소개한다. 2장, ‘데이터 수집 및 전처리’에서는 훈련 데이터 획득, 데이터 탐색 및 기본적인 피처 엔지니어링'을 알려준다. 3장, ‘파이썬 데이터 시각화’에서는 Matplotlib를 활용한 데이터 시각화 기법을 소개한다. 4장, ‘Scikit-learn으로 머신러닝 모델 생성’에서는 Scikit-learn을 활용한 분류 및 회귀 모델 생성 및 학습 기법을 다룬다. 5장, ‘머신러닝 모델 평가’에서는 머신러닝 모델 평가 방법을 알려준다. 2부. 머신러닝과 AWS 6장, ‘AWS 소개’에서는 클라우드 컴퓨팅과 AWS, 일반적인 서비스와 배포 모델을 소개한다. 7장, ‘AWS 글로벌 인프라’에서는 AWS 리전, 가용 영역, 엣지(edge) 로케이션을 소개한다. 8장, ‘자격 증명 및 접속 관리’에서는 Amazon 클라우드의 자원 보호 방법 및 AWS 프리 티어 계정 생성 방법을 설명한다. 9장, ‘Amazon S3’에서는 AWS에서 가장 많이 사용하는 저장 서비스인 S3를 다룬다. 10장, ‘Amazon Cognito’에서는 클라우드 기반 OAuth2.0 인증 관리 솔루션인 Amazon Cognito를 설명한다. 11장, ‘Amazon DynamoDB’에서는 Amazon의 관리형 NoSQL 데이터베이스 서비스인 Amazon DynamoDB를 다룬다. 12장, ‘Amazon Lambda’에서는 인프라 프로비저닝 없이 코드를 실행할 수 있는 AWS Lambda를 소개한다. 13장, ‘Amazon Comprehend’에서는 클라우드 기반의 자연어 처리 서비스인 Amazon Comprehend를 설명한다. 14장, ‘Amazon Lex’에서는 클라우드 기반의 챗봇 서비스를 구축할 수 있는 Amazon Lex를 소개한다. 15장, ‘Amazon SageMaker’에서는 기본 내장 알고리즘 혹은 사용자 정의 알고리즘을 통해 머신러닝 모델을 학습시키고 배포할 수 있는 클라우드 기반 머신러닝 서비스인 Amazon SageMaker를 소개한다. 16장, ‘Amazon SageMaker에서 TensorFlow 사용하기’에서는 구글의 TensorFlow 프레임워크와 Amazon SageMaker를 활용한 TensorFlow 모델 구축과 배포 방법을 알려준다. 17장, ‘Amazon Rekognition’에서는 완전 관리형 클라우드 기반 컴퓨터 비전 서비스인 Amazon Rekognition을 소개한다. 부록 부록 A, ‘Anaconda와 Jupyter Notebook 설정’에서는 로컬 환경에 Anaconda와 Jupyter Notebook 설치 방법을 안내한다. 부록 B, ‘실습에 필요한 AWS 자원 설정’에서는 예제 실습에 필요한 계정 내 AWS 리소스 설정 방법을 알려준다. 부록 C, ‘AWS CLI 설치 및 구성’에서는 AWS CLI 다운로드 및 설치 방법을 알려준다. 부록 D, ‘NumPy와 Pandas 소개’에서는 NumPy와 Pandas 라이브러리를 소개한다. *번역서에서는 원서 『Machine Learning in the AWS Cloud』의 ‘15장. Amazon Machine Learning’은 다루지 않습니다. ★ 지은이의 말 ★ AWS(Amazon Web Services)는 오늘날 클라우드 컴퓨팅 플랫폼 업계를 이끄는 선두주자로, 이 책을 쓰는 시점에 18개의 서비스 분야에서 100개 이상의 서비스를 제공한다. 클라우드 컴퓨팅 업계나 AWS 생태계를 처음 접하는 사람들에게는 이렇게 많은 숫자의 서비스가 압박으로 느껴질 수 있으며, 어디서부터 시작해 어느 부분에 초점을 맞춰야 할지도 부담스럽게 느껴질 것이다. 머신러닝을 처음 접하는 개발자와 경험이 많은 데이터 과학자도 종종 퍼블릭 클라우드나 AWS가 제공하는 머신러닝 서비스가 얼마나 유용한지 모르는 경우가 있다. 과거에는 클라우드 기반의 머신러닝 서비스에서 제한적인 알고리즘과 일부에서만 사용자 설정 기능을 사용할 수 있었으나 아마존에서 SageMaker를 발표하면서부터 많은 부분이 바뀌었다. SageMaker를 활용하면 아마존이 구현한 최신 알고리즘을 기반으로 머신러닝 모델을 구축할 수 있으며, Scikit-learn이나 TensorFlow와 같은 프레임워크를 사용해 사용자가 임의로 모델을 구축할 수도 있다. 머신러닝 모델만으로는 실생활에 사용 가능한 서비스를 구현할 수 없으며 데이터베이스, 로드밸런서, API 게이트웨이, 자격 증명 공급자와 같은 다양한 지원 시스템이 기반이 돼야 서비스가 가능하다. AWS는 이러한 모든 서비스를 제공한다. 이 책은 숙련된 머신러닝 전문가와 시작하는 애호가 모두를 위해 사전 학습 모델(pre-trained models)에 기반한 AWS 머신러닝 서비스들을 소개한다. 아울러 Amazon SageMaker에서 사용자 지정 모델을 훈련시키고 배포하는 과정을 단계별로 설명한다. 또한 머신러닝을 새로 시작하는 애호가들을 위해 데이터 전처리, 시각화, 피처 엔지니어링과 같은 머신러닝의 기초부터 NumPy, Pandas, Scikit-learn과 같이 널리 사용되는 파이썬 라이브러리도 다룬다. 이 책의 전반에 걸쳐 이론과 실무를 균형 있게 다루려고 노력했다. 기본 개념을 이해하기 쉽도록 많은 시각 자료를 포함했고, 실무에 바로 적용할 수 있는 다양한 사례와 조언을 실었다. 최신의 유용한 자료를 사용하고자 많은 노력을 기울였지만 일부분은 새로운 버전으로 변경됐을 수도 있다. 하지만 새로운 AWS 버전에서도 내용이 유용할 것이라 확신한다. ★ 옮긴이의 말 ★ 이 책은 머신러닝과 클라우드 두 가지를 모두 다룬다. 1장부터 8장까지 전반부에서는 머신러닝에 관한 이론적 개념과 데이터 수집, 전처리와 시각화 및 모델 생성과 평가에 이르는 전체적인 머신러닝 파이프라인을 설명한다. 9장부터 17장까지 후반부에서는 S3와 같은 기본적인 AWS 서비스를 시작으로 Comprehend, Lex, Rekognition과 같은 AWS 머신러닝 서비스를 간단한 실습과 함께 소개한다. 또한 AWS 머신러닝의 핵심 서비스인 SageMaker의 기본 내장 알고리즘과 TensorFlow를 활용한 사용자 지정 알고리즘을 사용하는 방법까지 기본적인 실습과 함께 설명한다. 모든 실습 예제는 Jupyter notebook 형태로 다운로드할 수 있도록 제공된다. 한 권의 책에서 두 가지 주제를 다루기엔 다소 깊이가 부족할 수는 있으나 머신러닝이나 AWS를 동시에 시작하고자 하는 독자에게는 좋은 선택일 수 있을 것이다. 먼저 부록을 따라 실습할 수 있는 환경을 설정하고 시작한다면 큰 어려움 없이 진도를 나갈 수 있다. 만약 머신러닝에 대한 기본적인 개념을 알고 있다면 부록을 마친 후 9장부터 시작하는 것도 좋다. 다만 일부 실습은 이전 장에서 작업한 내용을 바탕으로 진행될 수도 있으니 주의하길 바란다. 더불어 AWS Certified Machine Learning Specialty 자격과 관련된 한글 자료가 많이 없는 상황에서 자격을 준비하는 독자들에게도 작게나마 도움이 될 것이다. 또한 이 책은 머신러닝 개념과 AWS의 머신러닝 관련 서비스를 모두 경험할 수 있는 기회를 제공하는 만큼 처음 시작하는 독자에게는 앞으로 공부해 나갈 방향을 제시하고, 어느 정도 경험이 있는 독자에게는 AWS가 어떠한 머신러닝 서비스를 제공하고 어떻게 활용해 실제 서비스를 구성할 수 있는지 아이디어를 제공했으면 한다. IT는 워낙 빠르게 발전하는 분야다. 그러다 보니 원서가 출간된 뒤 번역서가 출간되는 사이 일부 원서에서 소개한 기능이나 서비스가 종료되기도 하고, 화면 구성이나 기능이 좀 더 개선된 방향으로 바뀌어 있기도 한다. 허나 내용을 하나하나 비교해본다면 큰 어려움 없이 따라갈 수 있을 것이다. 이러한 과정을 통해 AWS가 어떤 방향으로 발전해 나아가는지 파악해보자. |