지능형 클라우드 애플리케이션 구축 [Azure 서버리스 아키텍처를 활용한 확장성 있는 AI 모형 개발하기]
- 원서명Building Intelligent Cloud Applications: Develop Scalable Models Using Serverless Architectures with Azure (ISBN 9781492052326)
- 지은이비센테 헤레라 가르시아(Vicente Herrera García), 존 빅스(John Biggs)
- 옮긴이우병오, 우요셉
- ISBN : 9791161753874
- 20,000원
- 2020년 01월 31일 펴냄
- 페이퍼백 | 212쪽 | 188*235mm
- 시리즈 : 클라우드 컴퓨팅
책 소개
요약
바야흐로 IT의 대변혁 시대다. 클라우드(Cloud), AI, 서버리스(Serverless), 컨테이너(Container) 등 새롭고 복잡한 용어와 서비스가 쏟아지고, 수십 년간 IT 업계에 몸담아 온 베테랑도 따라잡기 힘들 정도로 IT 기술은 급변하고 있다. 대변혁으로 인한 혼돈에 모두가 어리둥절한 시대다. 이러한 혼돈 속에서 Microsoft Azure 클라우드를 기반으로 서버리스 아키텍처를 활용한 확장성 있는 AI 모형을 개발하는 방안을 제시하는 훌륭한 실무 지침서다. 변혁과 혼돈 속에서 신기술을 실무에 적용하는 방안에 목말라 하던 프로그래머들의 기대를 이 책이 충족시켜 주길 기대한다.
이 책에서 다루는 내용
■ 클라우드 기반 개발: 머신러닝, FaaS(서비스형 함수) 및 API를 사용해 서버리스 컴퓨팅의 기본 사항 배우기
■ 지능 추가: Azure Functions를 사용한 서버리스 애플리케이션 제작, 미리 빌드된 머신러닝 및 모형 사용법 학습
■ 배포 및 지속적인 제공: Azure Kubernetes Service, Azure Security Center, Azure Monitoring으로 속도 내기
이 책의 대상 독자
머신러닝의 관점에서 함수형 프로그래밍에 익숙해지고자 하는 숙련된 프로그래머를 위한 책이다. 시스템을 개발하는 데 Microsoft의 Azure 플랫폼과 Python을 사용한다.
이 책의 구성
Microsoft의 클라우드 플랫폼인 Azure에 초점을 맞춘다. 이 책에서 설명하는 개념은 보편적이지만 예제는 Azure에서 구현하는 방법을 따른다.
이 책은 3부로 이뤄져 있으며 총 8장으로 구성돼 있다.
1부, ‘클라우드 기반 개발’에서는 ‘서버리스 애플리케이션’에 관련된 아이디어를 제시하고 이벤트 기반 앱이 클라우드에서 호스팅되는 독립형 함수 호출을 이용해 어떻게 구축되는지 설명한다. 또한 로컬에서 실행되는 프로그램과 클라우드 기반 머신러닝 및 데이터 취급 서비스 사이의 인터페이스인 API를 설명한다.
2부, ‘지능 추가’에서는 데이터의 역할과 프로그램에서 데이터를 사용할 수 있게 해주는 방법을 설명한다. 클라우드 기반 애플리케이션에서 ‘지능’의 본질은 다양한 머신러닝 기술과 모형을 사용해 대용량 데이터 집합을 조사하는 것부터 시작한다. 이때 자신의 모형을 스스로 구축할 필요는 없고 해결하려는 문제를 어느 모형이 가장 잘 설명하는지 이해하면 된다. 즉, 함수가 이미 작성됐으므로 언제 어떻게 적용할지만 이해하면 되는 것이다.
3부, ‘배포 및 지속적인 제공’에서는 신뢰할 수 있고 비용 효율적이며 안전하고 테스트할 수 있는 방식으로 서버리스 애플리케이션을 세계에 출시해 성능을 모니터링하고 지속적으로 개선하는 방법을 설명한다.
목차
목차
- 1부 - 클라우드 기반 개발
- 1장. 클라우드에서의 머신러닝 및 딥러닝 모형
- __머신러닝 소개
- __딥러닝 소개
- __신경망
- __구조 정의 및 머신러닝 모형 교육의 어려움
- __서버리스 머신러닝 소개
- __머신러닝 모형과 함께 컨테이너 사용
- __머신러닝을 위한 서버리스 컴퓨팅의 이점
- 2장. 서비스형 함수 및 이벤트 기반 프로그래밍
- __서비스형 소프트웨어, 클라우드 컴퓨팅 및 서버리스
- __마이크로 서비스 아키텍처
- __함수형 프로그래밍의 등장
- ____객체 대신 함수 사용하기
- ____비동기 프로그래밍
- __서버리스
- __함수 구현
- __이벤트 기반 아키텍처
- __실시간 처리의 의미
- __요약 및 미리 보기
- 3장. Microsoft Azure의 서버리스 응용 프로그램 인터페이스
- __서버리스 플랫폼의 API
- __Azure 소개
- __Azure 일반 서비스
- 2부 - 지능 추가
- 4장. Microsoft Azure Functions 시작
- __Azure Functions
- ____Azure Portal을 사용해 함수 앱 만들기
- ____로컬 개발 환경
- ____핵심 도구를 사용해 함수 프로젝트 만들기
- ____Visual Studio Code 사용
- ____Visual Studio Code를 사용해 Python 디버깅
- __Azure Blob Storage
- ____스토리지 계정 만들기
- ____Blob 전송
- __요약 및 미리 보기
- 5장. 머신러닝 및 딥러닝 모형 사용하기
- __Azure Cognitive Services
- ____Cognitive Services에서 서비스 설정 및 사용
- ____서버리스 Azure 함수 프로젝트에서 Cognitive Services 사용
- __일반 머신러닝 도구, 라이브러리 및 프레임워크
- ____Microsoft Cognitive Toolkit
- ____ML.NET
- ____Jupyter Notebook
- ____TensorFlow
- ____Keras
- ____Scikit-learn
- __Azure를 사용하는 클라우드 머신러닝 솔루션
- ____Microsoft Machine Learning Studio
- ____Azure Machine Learning 서비스
- 3부 - 배포 및 지속적인 제공
- 6장. 배포 및 확장
- __배포 옵션
- ____Azure DevOps
- ____Docker
- ____Azure Container Registry
- ____kubelets
- ____kubelets를 위한 머신러닝 도구
- ____단일 컨테이너 머신러닝
- ____TFJob을 이용해 분산된 머신러닝
- 7장. 보안
- __Azure Functions 권한 부여 수준
- __API 관리
- __Azure 보안
- ____운영
- ____응용 프로그램
- ____스토리지
- ____네트워크 계층 제어
- ____네트워킹
- 8장. 모니터링
- __Azure Monitor
- __메트릭 및 로그
- __데이터 원본
- __Application Insights
- ____컨테이너 및 VM용 Insights
- __Log Analytics
- ____데이터 탐색기 질의어
- ____경고
- ____스마트 그룹