
텐서플로를 이용한 고급 딥러닝 [수학의 기초와 함께 이해하는 파이썬 딥러닝]
- 원서명Pro Deep Learning with TensorFlow: A Mathematical Approach to Advanced Artificial Intelligence in Python (ISBN 9781484230954)
- 지은이산타누 파타나야크(Santanu Pattanayak)
- 옮긴이이지훈
- ISBN : 9791161752761
- 35,000원
- 2019년 02월 28일 펴냄 (절판)
- 페이퍼백 | 536쪽 | 188*235mm
- 시리즈 : 데이터 과학
판매처
- 현재 이 도서는 구매할 수 없습니다.
책 소개
가장 최신 버전의 소스 파일은 저자의 깃허브 저장소 https://github.com/apress/pro-deep-learning-w-tensorflow에서 내려 받으실 수 있습니다.
요약
딥러닝에 필요한 수학적 기초부터 딥러닝의 기본 이론, CNN, RNN, RBM 및 GAN까지 모두 다루고 있는 책이다. 먼저, 딥러닝에 필요한 선형대수, 확률, 미적분, 최적화와 같은 기본적인 수학적인 기초를 탄탄히 다진다. 이를 기반으로 딥러닝의 기본 개념을 쉽게 설명한다. 또한 텐서플로의 기본 구문을 설명해 텐서플로에 익숙할 수 있도록 돕는다. CNN을 소개하면서 기본적인 신경망의 구조를 상세히 설명하고, RNN, LSTM, 양방향 RNN 및 GRU와 같은 고급 주제를 다룬다. 그리고 RBM 및 인코더를 다루면서 세부 주제인 깁스 샘플링, 베이지안 추론, 마르코프 체인 몬테 카를로 방법 및 PCA, ZCA 화이트닝과 같은 같은 기법에 상세히 설명한다. 이와 더불어 DBN에 대해서도 자세히 다룬다. 마지막으로 신경망의 고급 주제인 R-CNN, Fast R-CNN 및 GAN에 대해 관련된 예제와 함께 상세히 설명하고 있다. 이 책 한 권으로 딥러닝의 수학적인 기초 및 고급 주제까지 모두 배울 수 있다.
이 책에서 다루는 내용
■ 텐서플로를 사용해 딥러닝의 전체 스택을 이해하고 딥러닝을 위한 견고한 수학적 토대 마련하기
■ 텐서플로를 사용해 실무에 적용할 수 있는 복잡한 딥러닝 솔루션 구축하기
■ 텐서플로를 사용해 딥러닝에 대한 연구 및 실험 수행하기
이 책의 대상 독자
이 책은 복잡한 비즈니스 문제를 해결하기 위한 딥러닝 솔루션을 찾고 있는 데이터 과학자와 머신 러닝 전문가를 대상으로 한다. 텐서플로를 통해 딥러닝 솔루션을 연구하는 소프트웨어 개발자들에게도 적합하다. 또한 대학원생을 위한 저술한 책이며, 끊임없이 배우고자 하는 오픈소스 마니아들을 위해 저술됐다.
이 책의 구성
1장. ‘수학 기초’에서는 선형대수, 확률, 미적분, 최적화, 머신 러닝 수식과 관련된 모든 수학 개념을 자세히 설명하며, 딥러닝을 위해 필요한 수학적 기초를 다룬다. 여기서 다룬 다양한 수학 개념들은 머신 러닝과 딥러닝 분야에서 사용하는 데 초점을 맞춰 설명한다.
2장. ‘딥러닝 개념과 텐서플로 소개’에서는 딥러닝 세계를 소개하고 지난 몇 년 동안의 발전 과정을 논의한다. 퍼셉트론 학습 규칙과 역전파(backpropagation) 방법 같은 몇 가지 학습 방법과 함께 신경망의 주요 구성 요소를 상세히 설명한다. 또한 독자들이 텐서플로를 더 많이 사용하기 전에 텐서플로에 대한 기본 구문에 익숙해질 수 있도록 텐서플로 코딩의 패러다임을 소개한다.
3장. ‘컨볼루션 신경망’에서는 이미지 처리에 사용되는 컨볼루션 신경망(Convolutional Neural Network)을 다룬다. 이미지 처리는 컴퓨터 비전 분야에서 주로 사용되며, 컨볼루션 신경망을 사용해 개체 인식 및 탐지, 개체 분류, 지역화(localization), 분할(segmentation) 분야에서 성능이 크게 향상됐다. 이 장은 컨볼루션의 동작을 자세히 설명하는 것부터 시작해서 컨볼루션 신경망의 작동 원리를 다룬다. 신경망을 실험하고 확장하는 데 필요한 도구를 독자에게 제공하기 위해 컨볼루션 신경망의 각 컴포넌트 블록을 구축하는 데 중점을 둔다. 또한 컨볼루션(convolutional) 및 풀링(pooling) 계층을 통한 역전파를 자세히 논의해 독자가 컨볼루션 신경망의 훈련 프로세스에 대해 종합적인 시각을 갖도록 도와준다. 마지막으로 컨볼루션 신경망의 핵심적인 성공 요소인 등가성(equivariance)과 변환 불변(translation invariance)의 속성에 대해서도 다룬다.
4장. ‘순환 신경망을 이용한 자연어 처리’에서는 딥러닝을 이용한 자연어 처리를 다룬다. 연속적인 단어 모음과 스킵그램(skip-gram) 등의 단어 대 벡터 삽입 모델과 같은 텍스트 처리를 위한 벡터 공간 모델을 논의하고, 순환 신경망(RNN), LSTM, 양방향 RNN, GRU와 같은 고급 주제를 설명한다. 이 장에서는 언어 모델링을 자세히 설명함으로써 독자가 이러한 네트워크와 관련된 실제 문제를 다룰 때, 이 네트워크를 활용할 수 있도록 도와준다. 또한 RNN 및 LSTM의 경우 소실 기울기 문제 역전파 메커니즘을 자세히 설명한다.
5장. ‘제한된 볼츠만 머신과 자동 인코더를 사용한 자율 학습’에서는 제한된 볼츠만 머신(RBM)과 자동 인코더를 사용해 딥러닝의 비지도 학습 방법을 논의한다. 또한 RBM 훈련 과정의 경우, 샘플링에 대한 지식이 필요하기 때문에 메트로폴리스 알고리즘과 깁스 샘플링 같은 베이지안 추론과 마르코프 체인 몬테 카를로(MCMC) 방법을 설명한다. 또한 이 장에서는 RBM의 실제 훈련을 허용하는 깁스 샘플링의 커스터마이즈 버전인 대조 발산(contrastive divergence)을 설명한다. 추천 시스템에서의 협업 필터링뿐만 아니라 딥 빌리프 네트워크(DBN)의 비지도 학습에 RBM이 어떻게 사용될 수 있는지를 더 논의할 것이다.
그리고 5장에서는 희소 인코더, 잡음 제거 자동 인코더와 같은 다양한 종류의 자동 인코더를 다룬다. 또한 자동 인코더에서 학습한 내부 피처를 지도 학습뿐만 아니라 차원 감소에도 활용할 수 있는 방법을 학습할 수 있다. 마지막으로, PCA 화이트닝과 ZCA 화이트닝 같은 데이터 사전 처리 기술도 간단히 설명한다.
6장. ‘고급 신경망’에서 독자는 완전 컨볼루션 신경망, R-CNN, Fast R-CNN, Faster, U-Net 등과 같은 고급 신경망(Advanced Neural Network)을 살펴보며 이미지의 의미론적 분할, 객체 감지, 지역화를 다룬다. 전통적인 이미지 분할 방법을 소개하고, 두 세계의 장점을 적절하게 결합할 수 있도록 돕는다. 이 장의 후반부에서는 주어진 분포에 의해 생성된 데이터인 합성 데이터를 생성하는 데 사용되는 생성 모델의 새로운 토픽인 GAN(Generative Adversarial Network)에 대해 배운다. GAN은 이미지 생성, 이미지 수리, 추상적 추론, 의미론적 세분화, 비디오 생성, 한 도메인에서 다른 도메인으로의 스타일 이전, 텍스트-이미지 생성 애플리케이션과 같은 여러 분야에서 사용될 수 있다.
요약하면, 독자가 이 책에서 배울 수 있는 주요 학습 내용은 다음과 같다.
■ 텐서플로를 사용해 풀스택 딥러닝을 이해하고, 딥러닝을 위한 탄탄한 수학적 기초를 쌓는다.
■ 텐서플로를 사용해 복잡한 딥러닝 솔루션을 프로덕션 환경에 배포한다.
■ 딥러닝에 대한 연구를 수행하고 텐서플로를 사용해 실험을 수행한다.