AWS의 모체인 Amazon은 세계 제일의 쇼핑 사이트이다. Amazon 내부에서 다양한 AI가 사용되고 있다는 것은 쉽게 상상할 수 있다. AWS의 AI 서비스는 무척 다양하여 전체를 파악하는 것조차도 상당히 어려울 정도이다. AWS에서는 내부에서 AI를 통해 도출된 예측이나 개인화(Personalize)라고 얘기되는 AI 서비스를 일반인들에게도 제공하고 있다. 따라서 이러한 서비스를 직접 수행하며 어떠한 서비스가 제공되고 있는지 확인하는 것이 매우 중요하다.
이 책은 인공지능 개념과 역사, 선형회귀, 딥러닝 등 대표적인 기계학습 알고리즘, 기계학습을 사용하기 위한 SageMaker, EC2, AMI 등의 구현 경험과 Amazon Recognition, Amazon Comprehend, Amazon Textract, Amazon Translate 등의 서비스를 통한 AI의 구동을 직접 따라 하며 경험할 수 있다. 또한, Jupyter Notebook을 활용한 작업환경을 통해 이미지, 파일 등을 AWS로 업로드/다운로드할 수 있어 그동안 피상적으로 가지고 있던 지식들을 체계화시킬 수 있다.
제1장에서는 기계학습이나 딥러닝과 같은 AI를 구성하는 기초적인 기술에 대해 설명하고 있다. 제2장에서는 AWS에서 기계학습에 관한 서비스나 그것과 깊은 관계가 있는 데이터 수집·축적 등과 같은 서비스를 개략적으로 정리하였으며, 제3장 이후부터 실제로 조작을 하며 AI와 관련해서 AWS가 어떠한 서비스를 제공하고 있는지 구체적으로 파악할 수 있도록 구성했다. 서비스를 사용해 보고 무엇을 할 수 있는지, 어떻게 진행하면 좋은지 실제로 체감하다 보면 자신에게 알맞은 적절한 서비스를 선택하고 구축할 수 있게 될 것이다. 실제 구축 작업을 할 때는 별도로 AWS 레퍼런스 등을 참조해야 하는 경우도 있을 수 있으나, 이 책을 통해 체험하게 된다면, 레퍼런스 사이트를 능숙하게 다루면서 구축 작업을 진행할 수 있다.
Contents
저자의 말
소스 코드 다운로드 방법
제1장 인공지능이란 무엇인가?
1.1 3차 인공지능 붐
1.1.1 3차 인공지능 붐이란?
1.1.2 인공지능이란 무엇인가?
1.1.3 1차 인공지능 붐
1.1.4 제2차 인공지능 붐
1.1.5 인공지능이란 약간 앞서나간 IT
1.2 기계학습
1.2.1 기계학습이란 무엇인가?
1.2.2 기계학습의 구조
1.2.3 기계학습과 프로그래밍
1.2.4 기계학습으로 무엇을 할 수 있을까?
1.2.5 기계학습은 틀릴 수 있다
1.3 기계학습의 대표적인 기법
1.3.1 선형회귀
1.3.2 기계학습과 딥러닝
1.3.3 심층 뉴럴 네트워크
제2장 AWS의 기계학습 서비스
2.1 기계학습을 어떻게 사용할까?
2.1.1 기계학습 사용하고 만들기
2.1.2 프로그래밍으로 모델 만들기
2.1.3 웹 서비스로 모델 만들기
2.1.4 작성된 모델을 사용하기
2.2 AWS에서 기계학습을 사용하려면?
2.2.1 Amazon AI
2.2.2 Amazon SageMaker
2.2.3 Amazon EC2와 AWS Deep Learning AMI
2.2.4 데이터 레이크와 데이터 분석 서비스
2.3 기계학습을 시스템으로 사용하려면?
2.3.1 기계학습을 사용한 시스템이란?
2.3.2 기계학습 워크플로우
2.4 AWS에서 기계학습 워크플로우 만들기
2.4.1 데이터 수집과 축적
2.4.2 데이터 분석과 전처리
2.4.3 어떤 기계학습 서비스를 사용할까?
2.4.4 시스템에 설치
2.5 AWS 계정을 만들다
2.5.1 계정을 만드는 순서
제3장 AI 서비스
3.1 AI 서비스란?
3.1.1 AI 서비스는 Cognitive 서비스
3.1.2 AI 서비스 개요
3.1.3 AI 서비스 과금에 대하여
3.2 SDK 사용 준비
3.2.1 AI 서비스와 AWS SDK
3.2.2 Jupyter Notebook 도입(Windows)
3.2.3 Jupyter Notebook 도입(macOS)
3.2.4 IAM으로 사용자 추가 및 권한 부여
3.2.5 인증 정보의 저장
3.2.6 기존 사용자에게 권한 부여
3.2.7 Jupyter Notebook에서 AWS SDK for Python을 사용하기
3.2.8 S3 버킷 작성 및 파일 업로드
3.3 Amazon Rekognition
3.3.1 Amazon Rekognition이란?
3.3.2 이미지를 이용한 사물의 인식
3.3.3 이미지를 이용한 얼굴 인식
3.4 Amazon Comprehend
3.4.1 Amazon Comprehend란?
3.4.2 자연어 식별하기
3.4.3 엔티티 추출하기
3.5 Amazon Textract
3.5.1 Amazon Textract란?
3.5.2 영어 서류 이미지에서 데이터 획득하기
3.6 Amazon Translate
3.6.1 Amazon Translate란?
3.6.2 커스텀 용어를 사용하지 않는 번역
3.6.3 커스텀 용어를 사용한 번역
3.7 Amazon Transcribe
3.7.1 Amazon Transcribe란?
3.7.2 한국어 음성 파일의 인식
3.8 Amazon Polly
3.8.1 Amazon Polly란?
3.8.2 한국어 텍스트를 음성으로 변환하기
3.9 Amazon Lex
3.9.1 Amazon Lex란?
3.9.2 챗봇을 구현하기 위한 기술
3.9.3 AWS Lambda와 연계 109
3.9.4 LexModelBuildingService와 LexRuntimeService
3.9.5 Lex에서의 대화 구성
3.9.6 BookTrip 샘플로 동작 확인하기
3.9.7 Response 추가
3.9.8 챗봇 공개
3.10 Amazon Forecast
3.10.1 Amazon Forecast란?
3.10.2 Amazon Forecast에서 사용하는 데이터 셋(SET)
3.10.3 Amazon Forecast로 데이터 Import(데이터 셋 그룹 작성)
3.10.4 예측자 작성
3.10.5 예측 생성과 결과 확인
3.10.6 예측자 매트릭스 참조
3.11 Amazon Personalize
3.11.1 Amazon Personalize란?
3.11.2 Amazon Personalize에서 사용하는 데이터 셋
3.11.3 Amazon Personalize로 데이터 Import(데이터 셋 그룹 작성)
3.11.4 솔루션 (솔루션 버전) 생성
3.11.5 캠페인 생성
3.11.6 Recommendation 획득
제4장 Amazon SageMaker
4.1 SageMaker란 무엇인가?
4.1.1 SageMaker로 할 수 있는 일
4.1.2 SageMaker 사용 시작
4.1.3 SageMaker 기능과 화면 구성
4.1.4 Ground Truth(라벨링)
4.1.5 노트북
4.1.6 트레이닝(학습)
4.1.7 추론
4.1.8 S3 버킷 준비와 IAM Role 생성
4.1.9 SageMaker의 과금 체계
4.2 SageMaker 노트북 사용하기
4.2.1 SageMaker 노트북
4.2.2 노트북 인스턴스 생성
4.2.3 노트북 사용
4.2.4 노트북 인스턴스 정지
4.3 SageMaker 내장 알고리즘으로 모델 생성
4.3.1 SageMaker 내장 알고리즘을 이용한 모델 생성
4.3.2 SageMaker의 내장 알고리즘이란?
4.3.3 훈련 데이터 준비
4.3.4 훈련 데이터 가공
4.3.5 Hyper parameter 설정과 S3에 데이터 업로드
4.3.6 훈련 JOB 생성
4.3.7 정확도 평가
4.3.8 모델 생성
4.3.9 End point 구성 만들기
4.3.10 End point 생성
4.3.11 End point 삭제
4.3.12 배치 변환 JOB
4.4 SageMaker의 다양한 내장 알고리즘
4.4.1 내장 알고리즘 카탈로그
4.4.2 선형 학습자
4.5 SageMaker Studio와 SageMaker Autopilot
4.5.1 SageMaker Studio
4.5.2 SageMaker Autopilot
제5장 AWS Deep Learning AMI
5.1 EC2 환경에서의 딥러닝
5.1.1 유연한 환경이 필요한 경우
5.1.2 EC2와 AMI
5.1.3 DLAMI와 기본 DLAMI
5.2 DLAMI 사용하기
5.2.1 AMI에 의한 EC2 Instance 구축
5.2.2 DLAMI의 Jupyter Notebook 열기
5.2.3 TensorFlow와 Keras를 통한 모델 구축
5.2.4 구축한 모델의 배포(Deploy)
5.2.5 EC2 Instance의 중지 또는 종료
찾아보기
번역을 하면서
Author
이노우에 켄이치,양성건
일본 도쿄의 나카노 구에서 활동하고 있는 IT코디네이터 겸 IT엔지니어다. 1979년 후쿠오카 현 키타큐슈 시에서 태어났다. 1996년부터 웹사이트 구축, 앱 개발을 시작했으며 잡지에 다수의 글을 기고하고 있다. 일본 중견 SI회사와 컨설팅회사 등을 거쳐 2013년 아르티잔 엣지 합동회사(현재는 ‘합동회사 이노우에 켄이치 사무소’로 상호가 바뀜)를 설립해 대표 겸 CEO직을 맡고 있다. 기술 자체보다 기술이 사회에 미치는 영향에 흥미를 갖고 IT와 비즈니스가 동시에 필요한 곳을 찾아 활동 중이다.
고객 기업과의 프로젝트에 참가하는 한편, 비정기적 기고와 집필 활동도 적극적으로 하고 있으며 꾸준히 자신의 블로그(https://inoccu.com)도 운영한다. 2013년부터 왕초보 전문 IT학원인 테크 가든 스쿨(Tech Garden School)에서 강의를 하고 있으며 최근에는 어린이 프로그래밍 교육 활동도 시작했다.
일본 도쿄의 나카노 구에서 활동하고 있는 IT코디네이터 겸 IT엔지니어다. 1979년 후쿠오카 현 키타큐슈 시에서 태어났다. 1996년부터 웹사이트 구축, 앱 개발을 시작했으며 잡지에 다수의 글을 기고하고 있다. 일본 중견 SI회사와 컨설팅회사 등을 거쳐 2013년 아르티잔 엣지 합동회사(현재는 ‘합동회사 이노우에 켄이치 사무소’로 상호가 바뀜)를 설립해 대표 겸 CEO직을 맡고 있다. 기술 자체보다 기술이 사회에 미치는 영향에 흥미를 갖고 IT와 비즈니스가 동시에 필요한 곳을 찾아 활동 중이다.
고객 기업과의 프로젝트에 참가하는 한편, 비정기적 기고와 집필 활동도 적극적으로 하고 있으며 꾸준히 자신의 블로그(https://inoccu.com)도 운영한다. 2013년부터 왕초보 전문 IT학원인 테크 가든 스쿨(Tech Garden School)에서 강의를 하고 있으며 최근에는 어린이 프로그래밍 교육 활동도 시작했다.