구글 클라우드 플랫폼상의 데이터 과학 [실시간 데이터 파이프라인 구현: 입수부터 머신 러닝까지]
- 원서명Data Science on the Google Cloud Platform: Implementing End-to-End Real-Time Data Pipelines: From Ingest to Machine Learning (ISBN 9781491974568)
- 지은이발리아파 락쉬마난(Valliappa Lakshmanan)
- 옮긴이이준호
- ISBN : 9791161753737
- 40,000원
- 2019년 11월 29일 펴냄
- 페이퍼백 | 576쪽 | 188*235mm
- 시리즈 : 데이터 과학
책 소개
소스 코드 파일은 여기에서 내려 받으실 수 있습니다.
https://github.com/AcornPublishing/google-cloud-platform
요약
구글 클라우드 플랫폼(GCP)상에서 실제 문제에 정교한 통계 및 머신 러닝 방법론을 쉽게 적용하는 방법을 알려주는 책이다. 데이터 과학 분야에 입문하는 개발자는 통계와 머신 러닝 방법론, GCP 도구를 이용해 엔드 투 엔드 파이프라인을 구현하는 방법을 실습할 수 있다. 전체 과정을 따라 가면 다양한 데이터 과학 접근법을 사용한 비즈니스 의사 결정 사례를 구축할 수 있을 것이다.
추천의 글
“락(Lak)은 현대 데이터 과학자의 기술과 도구, 기법을 명확하게 알려줌과 동시에 실용적이고 유용한 가이드를 제시한다. 데이터 분석 분야를 시작할 때 이보다 더 좋은 방법을 생각할 수 없을 것이다. 구글이 제공해야 하는 지침을 쉽게 선보이며, 이 책을 보지 않을 때에 비해 데이터에서 10배 이상의 가치와 통찰력을 얻을 수 있을 것으로 생각한다. ” - 마일즈 워드(Miles Ward)/ 구글 클라우드, 솔루션 디렉터
이 책에서 다루는 내용
■ 앱 엔진 애플리케이션을 이용한 자동화되고 스케줄된 데이터 입수
■ 구글 데이터 스튜디오에서의 대시보드 생성과 구성
■ 스트리밍 분석을 수행하기 위한 실시간 분석 파이프라인 구축
■ 구글 빅쿼리를 이용한 대화형 데이터 탐색 수행
■ 클라우드 데이터프록 클러스터상에서 베이지안 모델 생성
■ 스파크를 이용한 로지스틱 회기 머신 러닝 모델 구축
■ 클라우드 데이터프록 파이프라인으로 시간-집계 피처 계산
■ 텐서플로를 이용한 고성능 예측 모델 생성
■ 배치 및 실시간 파이프라인으로부터 일반인이 접근할 수 있도록 마이크로서비스 모델 배포와 사용
이 책의 대상 독자
데이터 분석을 하는 독자 모두에게 적합한 책이다. 여러분은 시스템 프로그래머, 데이터 과학자, 데이터 엔지니어, 데이터베이스 관리자 또는 데이터 분석가일 것이다. 오늘날은 역할이 더 세분화될 수도 있지만(데이터 분석만 하든지, 모델 작성만 하든지, 데브옵스만 수행할 것이다), 업무 영역을 조금 늘리고 싶을 것이다. 데이터 과학 모델의 작성법뿐 아니라 상용 시스템에 대규모로 데이터 과학 모델을 구현하는 방법도 배우고 싶을 것이다.
목차
목차
- 1장. 데이터에 기반을 둔 의사 결정
- 많은 유사한 의사 결정
- 데이터 엔지니어의 역할
- 클라우드는 데이터 엔지니어를 능력자로 만든다
- 클라우드는 데이터 과학을 급속도로 변화시킨다
- 사례 연구로 확고한 사실을 얻을 수 있다
- 확률론적 결정
- 데이터와 도구
- 코드로 시작
- 요약
- 2장. 클라우드에 데이터 입수
- 항공사 정시 도착 데이터
- 알 수 있어야 함
- 학습-제공 간 왜곡
- 다운로드 절차
- 데이터셋 속성
- 데이터를 한곳에 저장하지 않는 이유
- 수직 확장
- 수평 확장
- 콜로수스와 주피터에 함께하는 데이터
- 데이터 입수
- 웹 양식 리버스 엔지니어링
- 데이터셋 다운로드
- 탐색 및 정리
- 구글 클라우드 스토리지에 데이터 업로드
- 월주기로 다운로드 스케줄링
- 파이썬으로 입수
- 플라스크 웹 애플리케이션
- 앱 앤진 실행
- URL 보호
- 크론 작업 스케줄링
- 요약
- 코드 휴게소
- 항공사 정시 도착 데이터
- 3장. 혁신적인 대시보드 생성
- 대시보드로 모델 설명
- 대시보드를 먼저 만들어야 하는 이유
- 정확성, 정직성 및 좋은 설계
- 구글 클라우드 SQL에 데이터 탑재
- 구글 클라우드 SQL 인스턴스 생성
- 구글 클라우드 플랫폼과의 상호작용
- MySQL에 대한 접근 제어
- 테이블 생성
- 테이블 채우기
- 첫 번째 모델 작성
- 분할표
- 임계값 최적화
- 머신 러닝
- 대시보드 작성
- 데이터 스튜디오로 시작
- 다이어그램 생성
- 최종 사용자 제어 기능 추가
- 파이 다이어그램으로 비율 표시
- 분할표 설명
- 요약
- 4장. 스트리밍 데이터: 송신 및 입수
- 이벤트 피드 설계
- 시간 보정
- 아파치 빔/클라우드 데이터플로우
- 공항 데이터 파싱
- 시간대 정보 추가
- 시간을 UTC로 변환
- 시간 보정
- 이벤트 생성
- 클라우드에서 파이프라인 실행
- 이벤트 스트림을 클라우드 pub/sub에 전송
- 전송할 기록 얻기
- 기록에 대한 분할
- 이벤트 일괄처리 구축
- 이벤트 일괄처리 전송
- 실시간 스트리밍 처리
- 자바 데이터플로우 기반 스트리밍
- 스트리밍 처리 실행
- 빅쿼리로 스트리밍 데이터 분석
- 실시간 대시보드
- 요약
- 5장. 대화형 데이터 탐색
- 탐색적 데이터 분석
- 빅쿼리에 항공 운항 데이터 탑재
- 서비리스 칼럼 기반 데이터베이스의 이점
- 클라우드 스토리지에 준비
- 접근 제어
- 연합 쿼리
- csv 파일 입수
- 클라우드 데이터랩을 이용한 탐색적 데이터 분석
- 주피터 노트북
- 클라우드 데이터랩
- 클라우드 데이터랩에 패키지 설치
- 구글 클라우드 플랫폼의 주피터 매직
- 품질 제어
- 이상한 값
- 이상치 제거: 빅데이터는 다르다
- 발생 빈도에 대한 데이터 필터링
- 출발 지연 시 도착 지연 조건
- 확률적 결정 임계값 적용
- 경험 확률 분포 함수
- 정답은...
- 모델 평가
- 무작위로 뒤섞기
- 날짜로 분할
- 학습과 테스트
- 요약
- 6장. 클라우드 데이터프록상의 베이즈 분류
- 맵리듀스와 하둡 생태계
- 맵리듀스 동작 방식
- 아파치 하둡
- 구글 클라우드 데이터프록
- 고급 도구 필요
- 클러스터가 없는 작업
- 초기화 작업
- 스파크 SQL을 이용한 양자화
- 클라우드 데이터프록상의 구글 클라우드 데이터랩
- 빅쿼리를 이용한 개별성 검사
- 구글 클라우드 데이터랩의 스파크 SQL
- 히스토그램 균일화
- 동적으로 클러스터 크기 조절
- 피그를 이용한 베이즈 분류법
- 클라우드 데이터프록상에서 피그 작업 실행
- 훈련일자로 제한
- 의사 결정 기준
- 베이지안 모델 평가
- 요약
- 맵리듀스와 하둡 생태계
- 7장. 머신 러닝: 스파크에서 로지스틱 회귀 분석
- 로지스틱 회귀 분석
- 스파크 ML 라이브러리
- 스파크 머신 러닝으로 시작
- 스파크 로지스틱 회귀 분석
- 학습 데이터셋 생성
- 코너 케이스 다루기
- 학습 예제 생성
- 학습
- 모델을 사용해 예측
- 모델 평가
- 피처 엔지니어링
- 실험 프레임워크
- 보류 데이터셋 생성
- 피처 선택
- 피처 크기 조정과 클리핑
- 피처 변환
- 범주형 변수
- 확장 가능, 반복 가능, 실시간
- 요약
- 로지스틱 회귀 분석
- 8장. 시간-윈도우 집계 피처
- 시간 평균의 필요성
- 자바상의 데이터플로우
- 개발 환경 구성
- 빔으로 필터링
- 파이프라인 옵션 및 문자열 I/O
- 클라우드에서 실행
- 객체로 파싱
- 시간 평균 계산
- 그룹화 및 조합
- 측면 입력으로 병렬 처리
- 디버깅
- BigQueryIO
- 항공편 객체 변형
- 일괄 모드로 슬라이딩 윈도우 계산
- 클라우드에서 실행
- 모니터링, 트러블 슈팅, 성능 튜닝
- 파이프라인 트러블 슈팅
- 측면 입력 제한 사항
- 파이프라인 재설계
- 중복 제거
- 요약
- 9장. 텐서플로를 이용한 머신 러닝 분류기
- 좀 더 복잡한 모델을 향해
- 텐서플로에서 데이터 읽기
- Experiment 구성
- 선형 분류기
- 학습 및 평가 입력 함수
- 서빙 입력 함수
- Experiment 작성
- 학습 실행 수행
- 클라우드에서의 분산 학습
- ML 모델 개선
- 심층 신경망 모델
- 임베딩
- 와이드앤딥 모델
- 하이퍼파라미터 튜닝
- 모델 배포
- 모델로 예측
- 모델 설명
- 요약
- 10장. 실시간 머신 러닝
- 예측 서비스 호출
- 요청 및 응답에 대한 자바 클래스
- 요청 전송과 응답 파싱
- 예측 서비스 클라이언트
- 항공편 정보에 예측 추가
- 일괄처리 입력 및 출력
- 데이터 처리 파이프라인
- 비효율성 식별
- 일괄처리 요청
- 스트리밍 파이프라인
- PCollection 평탄화
- 스트리밍 파이프라인 실행
- 지연되고 비순차적인 기록
- 워터마크와 트리거
- 트랜잭션, 처리량, 대기 시간
- 가능한 스트리밍 싱크
- 클라우드 빅테이블
- 테이블 설계
- 행의 키 설계
- 클라우드 빅테이블로 스트리밍
- 클라우드 빅테이블에서 쿼리
- 모델 성능 평가
- 지속적인 학습의 필요성
- 파이프라인 평가
- 성능 평가
- 한계 분포
- 모델 동작 확인
- 동작 변화 식별
- 요약
- 책 요약
- 예측 서비스 호출
- 부록 A. 머신 러닝 데이터셋 내에서 민감한 데이터의 고려