이미 소장하고 있다면 판매해 보세요.
|
1부. 소개 및 최신 AI 애플리케이션의 구조
1장. AWS의 인공지능 서비스 소개 __기술 요건 __AI 소개 ____AI 응용 분야 ______자율 주행차 ______의료 AI ______맞춤형 예측 키보드 ____AI 솔루션 개발 시 AWS의 필요성 __AI 관련 AWS 서비스의 개요 ____ AWS 서비스 사용 실습 ______AWS 계정 생성하기 ______AWS 관리 콘솔 살펴보기 ______AWS 서비스 찾기 ______AWS 리전 선택하기 ______아마존 레코그니션 서비스 사용해 보기 ______S3 이용하기 ______신원 및 접근 권한 관리 __AWS CLI 사용하기 ____파이썬 설치하기 ______macOS에 파이썬 설치하기 ______리눅스에 파이썬 설치하기 ______마이크로소프트 윈도에 파이썬 설치하기 ____AWS CLI 설치하기 ____AWS CLI 설정하기 ____AWS CLI로 레코그니션 서비스 호출하기 __AI 애플리케이션에 파이썬 사용하기 ____파이썬 개발 환경 구축하기 ______pipenv로 파이썬 가상 환경 구축하기 ______첫 번째 파이썬 가상 환경 구축하기 __AWS SDK로 첫 번째 프로젝트 개발하기 __요약 __참고자료 2장. 최신 AI 애플리케이션의 구조 __기술 요건 __AI 애플리케이션의 성공 요인 __AI 애플리케이션의 아키텍처 설계 원칙 __최신 AI 애플리케이션의 아키텍처 이해 __맞춤형 AI 기능 개발 __AI 애플리케이션 아키텍처에 따른 실습 준비 ____객체 탐지기 아키텍처 ____객체 탐지기 컴포넌트 간의 상호작용 ____기본 프로젝트 구조 생성하기 __AWS 챌리스를 이용해 로컬에서 AI 애플리케이션 개발하기 __웹 UI 기반의 데모 애플리케이션 개발 ____챌리스로 AI 애플리케이션 후단부를 AWS에 배포하기 ____AWS S3로 정적 웹 사이트 배포하기 __요약 __더 읽을거리 2부. AWS AI 서비스를 활용한 애플리케이션 구축 3장. 아마존 레코그니션 및 트랜스레이트를 활용한 텍스트 탐지와 번역 __좁은 세상 만들기 __사진 번역기의 아키텍처 이해 __사진 번역기 컴포넌트 간의 상호작용 __프로젝트 구조 구축하기 __서비스 구현 ____인식 서비스 - 텍스트 탐지 ____번역 서비스 - 텍스트 번역하기 ____스토리지 서비스 - 파일 업로드 ____단위 테스트에 대한 권장 사항 __RESTful 엔드포인트의 구현 ____이미지 속 텍스트 번역 엔드포인트 ____이미지 업로드 엔드포인트 __웹 사용자 인터페이스 구현 ____index.html ____scripts.js __사진 번역기의 AWS 배포 __프로젝트 개선 아이디어 논의 __요약 __더 읽을거리 4장. 아마존 트랜스크라이브 및 폴리를 활용한 음성-텍스트 변환과 텍스트-음성 변환 __기술 요건 __공상 과학 영화 속의 기술 __만능 통역기의 아키텍처 이해 ____만능 통역기 컴포넌트 간의 상호작용 __프로젝트 구조 구축하기 __서비스 구현 ____음성 표기 서비스 - 음성-텍스트 변환 ____번역 서비스 - 문서 번역 ____음성 서비스 - 텍스트-음성 변환 ____스토리지 서비스 - 파일 업로드 및 검색 __RESTful 엔드포인트 구현 ____녹음 번역 엔드포인트 ____음성 합성 엔드포인트 ____녹음 업로드 엔드포인트 __웹 사용자 인터페이스 구현 ____index.html ____scripts.js __만능 통역기의 AWS 배포 __프로젝트 개선 아이디어 논의 __요약 __참고자료 5장. 아마존 컴프리헨드를 활용한 텍스트 내 정보 추출 __기술 요건 __인공지능과 협업하기 __연락처 관리기 아키텍처 이해 __연락처 관리기 컴포넌트 간의 상호작용 __프로젝트 구조 구축하기 __서비스 구현 ____인식 서비스 - 텍스트 탐지 ____추출 서비스 - 연락처 정보 추출 ____연락처 저장소 - 연락처 저장 및 조회 ____스토리지 서비스 - 파일 업로드 및 조회 __RESTful 엔드포인트 구현 ____정보 추출 엔드포인트 ____연락처 저장 및 모든 연락처 조회 엔드포인트 ____업로드 이미지 엔드포인트 __웹 사용자 인터페이스 구현 ____Index.html ____scripts.js __연락처 관리기의 AWS 배포 __프로젝트 개선 아이디어 논의 __요약 __더 읽을거리 6장. 아마존 렉스를 활용한 음성 챗봇 구축 __친화적인 사람 대 컴퓨터 인터페이스의 이해 __연락처 도우미 아키텍처 __아마존 렉스 개발 패러다임의 이해 __연락처 도우미 봇 설정 ____LookupPhoneNumberByName 의도 ____LookupPhoneNumberByName 에 대한 샘플 발언과 슬롯 ____LookupPhoneNumberByName에 대한 확인 프롬프트와 응답 ____AWS 람다를 사용한 LookupPhoneNumberByName의 이행 ______LookupPhoneNumberByName에 대한 다이나모DB IAM 역할 ______LookupPhoneNumberByName에 대한 이행 람다 함수 ______아마존 렉스 도우미 함수 ____LookupPhoneNumberByName 의도 이행 ____LookupPhoneNumberByName에 대한 시험 대화 ____MakePhoneCallByName 의도 ____MakePhoneCallByName 에 대한 샘플 발언과 람다 초기화 및 검증 ______MakePhoneCallByName에 대한 슬롯과 확인 프롬프트 ______MakePhoneCallByName에 대한 이행과 응답 ______MakePhoneCallByName에 대한 시험 대화 ____연락처 도우미 봇 배포 __연락처 도우미를 애플리케이션에 통합 ____인공지능 비서 서비스 구현 ____연락처 도우미 RESTful 엔드포인트 __요약 __더 읽을거리 3부. 아마존 세이지메이커를 활용한 머신러닝 모형 훈련 7장. 아마존 세이지메이커로 작업하는 방법 __기술 요건 __스파크 EMR을 활용한 빅데이터 전처리 __아마존 세이지메이커에서 훈련 수행 ____Object2Vec의 작동 원리 ____Object2Vec 알고리즘의 훈련 __훈련한 Object2Vec의 배포 및 추론 수행 __초매개변수 최적화(HPO) 수행 __세이지메이커의 실험 관리 서비스 __세이지메이커로 엠엑스넷 및 글루온 기반의 자체 모형 가져 오기 __R 모형의 자체 컨테이너 가져오기 __요약 __더 읽을거리 8장. 머신러닝 추론 파이프라인 생성 __기술 요건 __세이지메이커의 추론 파이프라인 아키텍처 이해 __아마존 글루와 스파크ML로 기능을 생성하는 방법 ____사전 요건 준비 ____파이스파크로 데이터 전처리 ____AWS 글루 작업 생성 __세이지메이커에서 NTM 훈련으로 주제 식별 ____세이지메이커에서 온라인 및 일괄처리 추론의 비교 ____추론 파이프라인으로 실시간 예측 생성 __추론 파이프라인으로 일괄처리 예측 생성 __요약 __더 읽을거리 9장. 텍스트 집합에서 주제의 발견 __기술 요건 __주제 모델링 기법들 __신경 주제 모형의 작동 방식 이해 __세이지메이커에서 NTM 훈련 __훈련한 NTM 모형의 배포 및 추론 수행 __요약 __더 읽을거리 10장. 아마존 세이지메이커를 활용한 이미지 분류 __기술 요건 __합성곱 신경망 및 잔차 신경망 살펴보기 __아마존 세이지메이커에서 전이학습으로 이미지 분류 ____이미지 분류에 필요한 입력 데이터 생성 ____이미지 분류에 사용할 초매개변수의 정의 __배치 변환으로 추론 수행 __요약 __더 읽을거리 11장. 심층학습 및 자기회귀를 활용한 매출 예측 __기술 요건 __전통적인 시계열 예측 기법의 이해 ____ARIMA ____지수 평활 __DeepAR 모형이 작동하는 방식 ____모형 아키텍처 ____망 가중치의 최적화 __DeepAR 기반 매출 예측 모형의 이해 ____데이터셋에 대한 간결한 설명 ____예비 데이터 분석 ____데이터 전처리 ____DeepAR의 훈련 __매출 예측 및 평가 __요약 __더 읽을거리 4부. 머신러닝 모형 모니터링 및 관리 방법 12장. 모형 정확도 저하 및 피드백 루프 __기술 요건 __성능 저하가 발생한 모형의 모니터링 __새로 추가되는 훈련 데이터 관련 사용 케이스(광고 클릭 전환) 개발 __머신러닝 피드백 루프 생성 ____데이터 탐색 ____특징 생성 ____아마존 세이지메이커 XGBoost 알고리즘으로 광고 클릭 데이터 분류 ____모형 성능 평가 __요약 __더 읽을거리 13장. 다음으로 무엇이 필요한가? __1부에서 배운 개념 요약 __2부에서 배운 개념 요약 __3부에서 배운 개념 요약 __4부에서 배운 개념 요약 __다음으로 무엇이 필요한가? ____현실 세계에서 인공지능 ______AWS 딥렌즈 ______AWS 딥레이서 ______사물 인터넷 및 AWS IoT 그린그래스 ____자신의 분야에서 인공지능 __요약 |
Subhashini Tripuraneni
Charles Song
|
이 책에서 다루는 내용
- 다양한 머신러닝 및 심층학습 모형에 대한 유용한 인사이트 - 제품 수준의 강력한 심층학습 시스템 구축과 배포 - 다양한 인프라 사양으로 머신러닝 및 심층학습 모형 훈련 - 기반 인프라 관리 없이 손쉽게 AI 애플리케이션 확장 - AI 훈련 실험을 효율적으로 모니터링하고 관리 - 사전 훈련한 AI 서비스를 활용해 AI 애플리케이션 구축 이 책의 대상 독자 우수한 AI 솔루션 개발에 필요한 AWS 서비스를 활용하고자 하는 데이터 과학자, AI/머신러닝 개발자 및 연구자 그리고 AI에 열의를 가진 모두에게 적합하다. 따라서 머신러닝 개념을 기본적으로 이해하고 있어야 한다. 이 책의 구성 1장, ‘AWS의 인공지능 서비스 소개’에서는 머신러닝 및 심층학습을 포함하는 포괄적 용어인 AI를 소개한다. 이미지 인식, 자연어 처리(NLP, Natural Language Processing), 음성 인식 등 AI에서 가장 인기 있는 주제 몇 가지를 다루며 AWS의 AI 및 머신러닝 서비스와 플랫폼 전체를 소개한다. AWS는 즉시 사용 가능한 AI/머신러닝 기능을 제공하는 관리형 서비스뿐만 아니라 맞춤형 머신러닝 모형을 자체적으로 훈련할 수 있게 도와주는 관리형 인프라도 제공한다. 따라서 언제 관리형 서비스를 활용해야 하는지와 언제 맞춤형 머신러닝 모형을 직접 훈련해야 하는지를 안내한다. 또한 개발 환경을 설치해서 설정하는 방법을 배운다. 책 전반의 실습 프로젝트에 필요한 파이썬(Python)과 AWS SDK, 웹 개발 도구를 설치하는 과정을 먼저 설명하고, 프로그래밍 방식으로 AWS 플랫폼과 상호작용하는 예제 코드를 이용해 해당 환경 설정을 확인할 수 있도록 안내한다. 2장, ‘최신 AI 애플리케이션의 구조’에서는 최신 AI 애플리케이션의 아키텍처와 컴포넌트에 초점을 맞춰 설명한다. 애플리케이션을 잘 설계하는 전형적인 패턴과 개념의 설명부터 시작하는데 이러한 패턴과 개념은 제품 수준의 인공지능 솔루션을 설계하는 데 도움이 된다. 게다가 해당 솔루션을 신속히 프로토타이핑하고 실험해 보는 등 애플리케이션 생명주기에 걸쳐 유연하고 확장 가능하며 유지 관리가 가능한 솔루션을 개발하는 데도 도움이 된다. 또한 이후의 장에 나오는 실습 대상의 아키텍처 골격을 구축해 본다. 3장, ‘아마존 레코그니션 및 트랜스레이트를 활용한 텍스트 탐지와 번역’에서는 사진에 나타나는 외국어 텍스트를 모국어로 번역할 수 있는, 이 책의 첫 번째 AI 애플리케이션 구축 방법을 설명한다. 여기서 아마존 레코그니션과 아마존 트랜스레이트를 활용해 실습해 본다. 먼저 AWS의 AI 및 머신러닝 기능으로 재사용 가능한 프레임워크를 구축한 다음 해당 프레임워크를 기반으로 애플리케이션을 구축한다. 기능과 애플리케이션 로직을 분리해서 유연성과 재 사용성을 향상하는 방법을 보여주는데 유용성과 재사용성에 대한 개념은 이후의 장에서 실습 프로젝트를 계속하다 보면 더 명확해질 것이다. 4장, ‘아마존 트랜스크라이브 및 폴리를 활용한 음성-텍스트 변환과 텍스트-음성 변환’에서는 한 언어로 된 음성 대화를 다른 언어로 번역할 수 있는 애플리케이션의 구축 방법을 설명한다. 여기서 아마존 트랜스크라이브와 아마존 폴리를 활용해 실습해 본다. 재사용 가능한 AI 기능의 프레임워크를 계속해서 구축할 뿐만 아니라 3장에서 구축한 프레임워크의 번역 기능도 재사용할 수 있다. 이러한 재사용성 패턴으로 솔루션 실험 횟수를 늘리고 출시 속도를 높일 수 있다. 따라서 잘 설계한 제품 수준의 AI 솔루션에 대한 개념과 장점을 더욱 명확히 파악할 수 있다. 5장, ‘아마존 컴프리헨드를 활용한 텍스트 내 정보 추출’에서는 명함 사진에서 정보를 추출해서 정리할 수 있는 애플리케이션의 구축 방법을 설명한다. 아마존 컴프리헨드를 사용해 보고 4장에서 나온 텍스트 탐지 기능을 재사용한다. 이 외에도 사람이 개입하는 방식(human-in-theloop)이라는 개념을 소개한다. 즉, 사람이 개입(아마존 컴프리헨드에서 추출한 정보를 확인하고 수정)하는 방식의 그래픽 사용자 인터페이스를 구축해 본다. 6장, ‘아마존 렉스를 활용한 음성 챗봇 구축’에서는 5장의 실습 프로젝트를 통해 추출해서 저장한 명함 연락처 정보를 조회하는 기능이 있는 음성 챗봇을 구축해 본다. 아마존 렉스로 챗봇을 구축해 보고, 해당 인터페이스를 애플리케이션에 통합해 일종의 인공지능 비서를 완성해 본다. 7장, ‘아마존 세이지메이커로 작업하는 방법’에서는 아마존 세이지메이커의 주요 기능을 경험해본다. 해당 주요 기능으로는 빅데이터 처리, 기본 제공하는 모형(Object2Vec)의 훈련 및 배포, 최고 성능의 모형 식별 그리고 자체 모형과 컨테이너를 세이지메이커 에코시스템으로 가져오는 방법 등이 있다. 도서 평점 데이터셋을 활용해서 각각의 요소 기능을 설명한다. 첫째, 사용자가 한 도서(즉, 사용자가 평가한 적이 없는 도서)에 매길 평점을 예측한다. 둘째, 세이지메이커의 HPO 기능으로 초매개변수를 자동으로 최적화하면서 세이지메이커의 검색 서비스로 최고 성능의 모형과 당시 사용한 훈련 및 테스트셋을 찾는다. 셋째, 세이지메이커에서 동일한 모형을 재구축할 필요 없이 자체 모형과 컨테이너를 세이지메이커로 원활히 가져오는 방법을 설명한다. 7장을 읽고 나면, 아마존 세이지메이커의 주요기능의 활용법을 알 수 있다. 8장, ‘머신러닝 추론 파이프라인 생성’에서는 세이지메이커와 다른 AWS 서비스로 머신러닝 추론 파이프라인을 만드는 방법을 보여주는데 해당 파이프라인은 데이터를 처리하고 알고리즘을 훈련하고 학습한 모형을 배포하며 추론을 실행할 수 있다. 아울러 이러한 모형 훈련 및 추론 과정의 데이터 처리 시에 동일한 로직을 사용한다. 9장, ‘텍스트 집합에서 주제의 발견’에서는 새로운 주제를 소개한다. 이전의 NLP 관련 장에서는 아마존에서 제공하는 몇 가지 NLP 서비스를 사용하는 방법을 설명했다. 하지만 9장에서는 아마존 세이지메이커에 있는 알고리즘을 사용해서 해당 모형의 훈련 및 배포를 세밀하게 제어하고 확장성 있는 모형을 구축한다. 10장, ‘아마존 세이지메이커를 활용한 이미지 분류’는 아마존 레코그니션에서 배운 내용과 관련이 있다. 다만 여기서는 AWS가 보유한 이미지로 사전 훈련한 분류 모형을 레코그니션 API로 단순 이용하는 방법을 넘어서 사용자가 보유한 이미지로 분류 모형을 훈련하는 방법을 배운다. 특히 이미지 데이터셋에 레이블을 매기고 세이지메이커의 이미지 분류 알고리즘으로 맞춤형 이미지 탐지 모형을 구축하는 데 중점을 둔다. 이미지넷(ImageNet)으로 사전 훈련한 심층 잔차 학습 모형인 ResNet50으로 전이학습을 하는 방법을 배운다. 여기서 이미지넷은 명사로 지칭할 수 있는 이미지들을 모아둔 데이터베이스로, 스탠퍼드대학교 및 프린스턴대학교의 지원을 받는다. 11장, ‘심층학습 및 자기회귀를 활용한 매출 예측’에서는 심층학습 기반의 자기회귀(DeepAR) 알고리즘을 판매 예측에 이용하는 방법을 설명한다. 특히 순환 신경망(RNN, Recurrent Neural Network)의 일종인 장단기 메모리(LSTM)를 완전히 파악할 수 있다. RNN은 루프가 있는 신경망으로 정보를 유지하고 연결해서 이전 정보를 현재 처리에 넘긴다. 자기회귀는 이전 시간 스텝에 나타난 관측 값을 회귀 방정식의 입력으로 사용해서 다음 시간 스텝에 나타날 값을 예측한다. 11장을 통해 아마존 세이지메이커로 강력한 판매 예측 모형을 구축하게 된다. 12장, ‘모형 정확도 저하 및 피드백 루프에서는 모형을 출시한 후에 성능이 저하되는 이유를 설명한다. 이때 모바일 앱의 광고 클릭 전환을 예측하는 방법을 논의하면서 그 이유를 설명한다. 새로운 데이터를 얻을수록 최적의 성능을 가진 모형을 재훈련하고 조정하는 것이 중요하다. 13장, ’다음으로 무엇이 필요한가?에서는 지금까지 살펴본 개념을 요약한다. 또한 이전 장에서 다루지 않은 AWS AI 프레임워크 및 인프라를 간략하게 설명한다. 지은이의 말 이 책은 아마존 웹 서비스(AWS)의 다양한 인공지능(AI) 및 머신러닝 서비스를 설명한다. 그리고 실무 중심의 실습으로 훌륭한 애플리케이션을 개발하는 방법을 배운다. 또한 AWS에서 머신러닝과 심층학습 모형을 효과적으로 설계, 개발, 모니터링, 유지 보수하는 방법을 설명한다. AI/머신러닝 서비스 및 플랫폼 관련 AWS의 개요와 더불어 AI 및 다양한 산업 분야에서 쓰이는 AI 응용 분야의 소개로 시작한다. 아마존 레코그니션(Amazon Rekognition) 및 아마존 트랜스레이트(Amazon Translate)로 텍스트를 탐지하고 번역하는 방법을 제시한다. 아마존 트랜스크라이브(Amazon Transcribe)와 아마존 폴리(Amazon Polly)를 활용한 음성-텍스트 변환 방법을 배운다. 텍스트에서 정보를 추출하는 아마존 컴프리헨드(Amazon Comprehend)의 사용 방법과 음성 챗봇을 구축하는 아마존 렉스(Amazon Lex)에 대해서 다룬다. 아마존 세이지메이커(Amazon SageMaker)의 주요 기능인 빅데이터 처리, 텍스트 집합에서 주제 발견 그리고 이미지 분류에 대해 설명한다. 마지막으로 심층학습 및 자기회귀로 매출을 예측하는 방법과 모델 정확도 저하에 대응하는 방안을 다룬다. 이 책을 다 읽고 나면 모형 개발 생명주기의 모든 측면을 다루는 현장감 있는 실습을 통해 AWS에서 AI 기능과 애플리케이션을 개발하는 데 필요한 모든 지식을 습득하게 된다. 옮긴이의 말 2016년 3월 알파고 신드롬 이후 지금까지도 국내에서는 인공지능(AI)에 대한 열기가 식지 않고 있으며 다양한 사람에게까지 그 관심이 확대되고 있다. 이런 분위기에 이끌려 새롭게 AI와 관련된 일을 하고자 한다면, AI를 연구의 대상으로 봐야 할지, 개발할 애플리케이션에 적용하기 위한 기반 기술로 봐야 할지 먼저 고민해야 할 것이다. 시중에는 AI 기초부터 최신 AI 기법까지 다루는 책들이 즐비하지만, AI 기본 지식만으로도 관련 애플리케이션을 개발하고 배포할 수 있는 방법을 다루는 책은 매우 드물다. 이 책은 이러한 갈증을 해소하기에 적합한 내용과 풍부한 실습 과정을 제공한다. 애플리케이션을 개발하는 데 기본 알고리즘 개발부터 시작할 필요가 없듯이 AI 애플리케이션을 구축하고자 AI 알고리즘을 일일이 개발할 필요가 없다. 더군다나 풍부한 데이터로 훈련한 AI 모델을 재활용하거나 훈련에 필요한 다양한 인프라가 뒷받침된다면 자신의 아이디어를 AI 애플리케이션으로 빠르게 구현해 낼 수 있을 것이다. 이 책은 AI 기본 지식과 애플리케이션 개발 능력만 갖추고 있으면 다양한 AWS 서비스를 활용해 누구나 손쉽게 AI 애플리케이션을 개발할 수 있도록 하는 방법을 실습과 함께 제공한다. 뿐만 아니라 한 번 구축한 AI 애플리케이션을 손쉽게 변경하고 개선할 수 있도록 하는 아키텍처 설계 측면도 다루고 있어서 시장 출시를 목표로 AI 애플리케이션을 개발하고자 하는 이들을 위한 지침서로 손색이 없다. AI 기능을 구현한 엔진만으로는 실생활에 사용할 수 있는 애플리케이션을 개발해서 배포하기 어려우며 스토리지, DB, API 게이트웨이 등의 다양한 인프라가 지원돼야 한다. AWS에는 인프라 관련 서비스 외에도 다양한 AI 관련 서비스가 있으며 앞으로 활용 가치가 높은 서비스가 꾸준히 출시될 전망이다. 더군다나 특정 벤더가 제공하는 서비스이므로 서비스 간의 상호 연동성 및 운용성이 높아 큰 문제없이 애플리케이션을 운영하고 유지보수할 수 있다. 따라서 이 책에서 제시하는 방법을 익히고 AI 관련 아이디어 발굴에 집중하다 보면 머지않아 실생활에 도움이 되는 훌륭한 AI 애플리케이션을 개발해서 성공적으로 출시할 수 있을 것이다. |