서브메뉴

본문

텐서플로로 배우는 딥러닝
텐서플로로 배우는 딥러닝
저자 : 솔라리스
출판사 : 영진닷컴
출판년 : 2018
ISBN : 9788931458398

책소개


딥러닝 기초 이론부터 ANN, 오토인코더, CNN, RNN, GAN, FCN, DQN, 이미지 캡셔닝 최신 모델 구현까지

『텐서플로로 배우는 딥러닝』에서는 딥러닝 기법의 이론적 배경이 되는 기초적인 수학적 이론들을 자세하게 소개하고, 딥러닝 기초 모델들(ANN, 오토인코더, CNN, RNN)의 정확한 이해를 위해 텐서플로 예제 코드와 함께 설명한다. 또한, 딥러닝 모델들을 다양한 문제에 적용하고 실제 문제에 응용하는 방법을 소개한다.

책의 초반에는 선형 대수, 확률 통계, 최적화 이론과 같은 수학적 이론을 설명하고, 딥러닝 알고리즘의 기본 구조인 ANN, 오토인코더, CNN, RNN을 다룬다. 중반에는 앞에서 배운 ANN, CNN, RNN 구조를 이미지 캡셔닝, Semantic Image Segmentation 문제에 어떻게 응용하는지를 설명한다. 책의 후반에는 최근에 인기 있는 주제인 생성 모델과 강화 학습의 개념을 살펴보고, 파인 튜닝과 사전 학습된 모델을 이용해서 실제 문제를 해결하는 방법을 배운다. 1권의 책으로 딥러닝 기초 이론부터 텐서플로 라이브러리를 이용한 실제 구현까지 모두 파악할 수 있다.

목차


1. 인공지능, 머신러닝, 딥러닝 소개
1.1 딥러닝 알고리즘의 등장배경
1.2 지도 학습
1.3 비지도 학습
1.4 강화 학습
1.5 정리

2. 텐서플로 소개
2.1 텐서플로 설치 및 책에서 사용하는 소스 코드 다운로드
2.1.1 텐서플로 소개
2.1.2 텐서플로 설치
2.1.3 책에서 사용하는 소스 코드 다운로드
2.2 딥러닝, 텐서플로 응용 분야
2.2.1 컴퓨터 비전
2.2.2 자연어 처리
2.2.3 음성 인식
2.2.4 게임
2.2.5 생성 모델
2.3 텐서플로 추상화 라이브러리들
2.3.1 케라스
2.3.2 TF-Slim
2.3.3 Sonnet
2.4 정리

3. 텐서플로 기초와 텐서보드
3.1 텐서플로 기초 - 그래프 생성과 그래프 실행
3.2 플레이스홀더
3.3 선형회귀 및 경사하강법 알고리즘
3.3.1 머신러닝의 기본 프로세스 - 가설 정의, 손실 함수 정의, 최적화 정의
3.3.2 선형 회귀 알고리즘 구현 및 변수
3.4 텐서보드를 이용한 그래프 시각화
3.5 정리

4. 머신러닝 기초 이론들
4.1 Batch Gradient Descent, Mini-Batch Gradient Descent, Stochastic Gradient Descent
4.2 Training Data, Validation Data, Test Data 및 오버피팅
4.3 소프트맥스 회귀
4.3.1 소프트맥스 회귀
4.3.2 크로스 엔트로피 손실 함수
4.3.3 MNIST 데이터셋
4.3.4 One-hot Encoding
4.4 소프트맥스 회귀를 이용한 MNIST 숫자 분류기 구현
4.4.1 mnist_classification_using_softmax_regression.py
4.4.2 tf_nn_sparse_softmax_cross_entropy_with_logits_example.py
4.5 정리

5. 인공신경망(ANN)
5.1 인공신경망의 등장 배경
5.2 퍼셉트론
5.3 다층퍼셉트론 MLP
5.4 오류역전파 알고리즘
5.5 ANN을 이용한 MNIST 숫자 분류기 구현
5.6 정리

6. 오토인코더(AutoEncoder)
6.1 오토인코더의 개념
6.2 오토인코더를 이용한 MNIST 데이터 재구축
6.3 오토인코더와 소프트맥스 분류기를 이용한 MNIST 분류기 구현
6.3.1 파인 튜닝과 전이 학습
6.3.2 오토인코더와 소프트맥스 분류기를 이용한 MNIST 숫자 분류기 구현
6.4 정리

7. 컨볼루션 신경망(CNN)
7.1 컨볼루션 신경망의 개념 - 컨볼루션, 풀링
7.2 MNIST 숫자 분류를 위한 CNN 분류기 구현
7.3 CNN을 이용한 CIFAR-10 이미지 분류기 구현
7.3.1 CIFAR-10 데이터셋
7.3.2 드롭아웃
7.3.3 CNN을 이용한 CIFAR-10 이미지 분류기 구현
7.4 대표적인 CNN 모델들 - AlexNet, VGGNet, GoogLeNet, ResNet
7.4.1 AlexNet
7.4.2 VGGNet
7.4.3 GoogLeNet(Inception v1)
7.4.4 ResNet
7.5 tf.train.Saver API를 이용해서 모델과 파라미터를 저장하고 불러오기
7.6 정리

8. 순환신경망(RNN)
8.1 순환신경망
8.2 LSTM(장/단기 기억 네트워크)와 경사도 사라짐 문제
8.3 GRU
8.4 임베딩
8.4.1 임베딩의개념
8.4.2 tf.nn.embedding_lookup을 이용한 임베딩 구현
8.5 경사도 증가 문제와 경사도 자르기
8.6 Char-RNN
8.6.1 Char-RNN의 개념
8.6.2 텐서플로를 이용한 Char-RNN 구현
8.6.2.1 train_and_sampling.py
8.6.2.2 utils.py
8.7 정리

9. 이미지 캡셔닝(Image Captioning)
9.1 이미지 캡셔닝 문제 소개
9.2 이미지 캡셔닝 데이터셋 - MS COCO
9.3 이미지 캡셔닝 구현 - im2txt
9.4 im2txt 코드 구조에 대한 설명 및 코드 실행 방법
9.4.1 train.py
9.4.2 show_and_tell_model.py
9.4.3 run_inference.py
9.5 정리

10. Semantic Image Segmentation
10.1 Semantic Image Segmentation 개념
10.2 FCN
10.3 Semantic Image Segmentation을 위한 데이터셋 - MIT Scene Parsing
10.4 FCN을 이용한 Semantic Image Segmentation 구현 - FCN.tensorflow
10.4.1 FCN.py
10.4.2 TensorflowUtils.py
10.4.3 read_MITSceneParsingData.py
10.4.4 BatchDatsetReader.py
10.5 정리

11. 생성 모델 - GAN
11.1 생성 모델의 개념
11.2 GAN의 개념
11.3 GAN을 이용한 MNIST 데이터 생성
11.4 정리

12. 강화 학습(Reinforcement Learning)
12.1 강화 학습의 기본 개념과 MDP
12.1.1 상태 가치 함수
12.1.2 행동 가치 함수
12.2 Q-Learning
12.2.1 Q-Table과 Q-Networks
12.2.2 ∈-Greedy
12.3 DQN
12.4 DQN을 이용한 게임 에이전트 구현 - CatchGame
12.4.1 train_catch_game.py
12.4.2 play_catch_game.ipynb
12.5 정리

13. 파인 튜닝과 사전 학습된 모델을 이용한 실제 문제 해결
13.1 파인 튜닝 및 전이 학습 기법 리뷰
13.2 Inception v3 Retraining을 이용한 나만의 분류기
13.2.1 Inception v3 모델
13.2.2 inceptionv3_retrain.py - 나만의 데이터셋으로 파인 튜닝
13.2.3 inceptionv3_retrain.py
13.2.4 inceptionv3_inference.py
13.3 사전 학습된 모델을 이용한 물체 검출 수행
13.3.1 물체 검출의 개념
13.3.2 사전 학습된 Faster R-CNN 모델로 물체 검출 수행
13.3.3 faster_rcnn_inference.py
13.4 TensorFlow Hub
13.5 정리
13.6 더 공부할 것들

책소개


딥러닝 기초 이론부터 ANN, 오토인코더, CNN, RNN, GAN, FCN, DQN, 이미지 캡셔닝 최신 모델 구현까지

『텐서플로로 배우는 딥러닝』에서는 딥러닝 기법의 이론적 배경이 되는 기초적인 수학적 이론들을 자세하게 소개하고, 딥러닝 기초 모델들(ANN, 오토인코더, CNN, RNN)의 정확한 이해를 위해 텐서플로 예제 코드와 함께 설명한다. 또한, 딥러닝 모델들을 다양한 문제에 적용하고 실제 문제에 응용하는 방법을 소개한다.

책의 초반에는 선형 대수, 확률 통계, 최적화 이론과 같은 수학적 이론을 설명하고, 딥러닝 알고리즘의 기본 구조인 ANN, 오토인코더, CNN, RNN을 다룬다. 중반에는 앞에서 배운 ANN, CNN, RNN 구조를 이미지 캡셔닝, Semantic Image Segmentation 문제에 어떻게 응용하는지를 설명한다. 책의 후반에는 최근에 인기 있는 주제인 생성 모델과 강화 학습의 개념을 살펴보고, 파인 튜닝과 사전 학습된 모델을 이용해서 실제 문제를 해결하는 방법을 배운다. 1권의 책으로 딥러닝 기초 이론부터 텐서플로 라이브러리를 이용한 실제 구현까지 모두 파악할 수 있다.

목차


1. 인공지능, 머신러닝, 딥러닝 소개
1.1 딥러닝 알고리즘의 등장배경
1.2 지도 학습
1.3 비지도 학습
1.4 강화 학습
1.5 정리

2. 텐서플로 소개
2.1 텐서플로 설치 및 책에서 사용하는 소스 코드 다운로드
2.1.1 텐서플로 소개
2.1.2 텐서플로 설치
2.1.3 책에서 사용하는 소스 코드 다운로드
2.2 딥러닝, 텐서플로 응용 분야
2.2.1 컴퓨터 비전
2.2.2 자연어 처리
2.2.3 음성 인식
2.2.4 게임
2.2.5 생성 모델
2.3 텐서플로 추상화 라이브러리들
2.3.1 케라스
2.3.2 TF-Slim
2.3.3 Sonnet
2.4 정리

3. 텐서플로 기초와 텐서보드
3.1 텐서플로 기초 - 그래프 생성과 그래프 실행
3.2 플레이스홀더
3.3 선형회귀 및 경사하강법 알고리즘
3.3.1 머신러닝의 기본 프로세스 - 가설 정의, 손실 함수 정의, 최적화 정의
3.3.2 선형 회귀 알고리즘 구현 및 변수
3.4 텐서보드를 이용한 그래프 시각화
3.5 정리

4. 머신러닝 기초 이론들
4.1 Batch Gradient Descent, Mini-Batch Gradient Descent, Stochastic Gradient Descent
4.2 Training Data, Validation Data, Test Data 및 오버피팅
4.3 소프트맥스 회귀
4.3.1 소프트맥스 회귀
4.3.2 크로스 엔트로피 손실 함수
4.3.3 MNIST 데이터셋
4.3.4 One-hot Encoding
4.4 소프트맥스 회귀를 이용한 MNIST 숫자 분류기 구현
4.4.1 mnist_classification_using_softmax_regression.py
4.4.2 tf_nn_sparse_softmax_cross_entropy_with_logits_example.py
4.5 정리

5. 인공신경망(ANN)
5.1 인공신경망의 등장 배경
5.2 퍼셉트론
5.3 다층퍼셉트론 MLP
5.4 오류역전파 알고리즘
5.5 ANN을 이용한 MNIST 숫자 분류기 구현
5.6 정리

6. 오토인코더(AutoEncoder)
6.1 오토인코더의 개념
6.2 오토인코더를 이용한 MNIST 데이터 재구축
6.3 오토인코더와 소프트맥스 분류기를 이용한 MNIST 분류기 구현
6.3.1 파인 튜닝과 전이 학습
6.3.2 오토인코더와 소프트맥스 분류기를 이용한 MNIST 숫자 분류기 구현
6.4 정리

7. 컨볼루션 신경망(CNN)
7.1 컨볼루션 신경망의 개념 - 컨볼루션, 풀링
7.2 MNIST 숫자 분류를 위한 CNN 분류기 구현
7.3 CNN을 이용한 CIFAR-10 이미지 분류기 구현
7.3.1 CIFAR-10 데이터셋
7.3.2 드롭아웃
7.3.3 CNN을 이용한 CIFAR-10 이미지 분류기 구현
7.4 대표적인 CNN 모델들 - AlexNet, VGGNet, GoogLeNet, ResNet
7.4.1 AlexNet
7.4.2 VGGNet
7.4.3 GoogLeNet(Inception v1)
7.4.4 ResNet
7.5 tf.train.Saver API를 이용해서 모델과 파라미터를 저장하고 불러오기
7.6 정리

8. 순환신경망(RNN)
8.1 순환신경망
8.2 LSTM(장/단기 기억 네트워크)와 경사도 사라짐 문제
8.3 GRU
8.4 임베딩
8.4.1 임베딩의개념
8.4.2 tf.nn.embedding_lookup을 이용한 임베딩 구현
8.5 경사도 증가 문제와 경사도 자르기
8.6 Char-RNN
8.6.1 Char-RNN의 개념
8.6.2 텐서플로를 이용한 Char-RNN 구현
8.6.2.1 train_and_sampling.py
8.6.2.2 utils.py
8.7 정리

9. 이미지 캡셔닝(Image Captioning)
9.1 이미지 캡셔닝 문제 소개
9.2 이미지 캡셔닝 데이터셋 - MS COCO
9.3 이미지 캡셔닝 구현 - im2txt
9.4 im2txt 코드 구조에 대한 설명 및 코드 실행 방법
9.4.1 train.py
9.4.2 show_and_tell_model.py
9.4.3 run_inference.py
9.5 정리

10. Semantic Image Segmentation
10.1 Semantic Image Segmentation 개념
10.2 FCN
10.3 Semantic Image Segmentation을 위한 데이터셋 - MIT Scene Parsing
10.4 FCN을 이용한 Semantic Image Segmentation 구현 - FCN.tensorflow
10.4.1 FCN.py
10.4.2 TensorflowUtils.py
10.4.3 read_MITSceneParsingData.py
10.4.4 BatchDatsetReader.py
10.5 정리

11. 생성 모델 - GAN
11.1 생성 모델의 개념
11.2 GAN의 개념
11.3 GAN을 이용한 MNIST 데이터 생성
11.4 정리

12. 강화 학습(Reinforcement Learning)
12.1 강화 학습의 기본 개념과 MDP
12.1.1 상태 가치 함수
12.1.2 행동 가치 함수
12.2 Q-Learning
12.2.1 Q-Table과 Q-Networks
12.2.2 ∈-Greedy
12.3 DQN
12.4 DQN을 이용한 게임 에이전트 구현 - CatchGame
12.4.1 train_catch_game.py
12.4.2 play_catch_game.ipynb
12.5 정리

13. 파인 튜닝과 사전 학습된 모델을 이용한 실제 문제 해결
13.1 파인 튜닝 및 전이 학습 기법 리뷰
13.2 Inception v3 Retraining을 이용한 나만의 분류기
13.2.1 Inception v3 모델
13.2.2 inceptionv3_retrain.py - 나만의 데이터셋으로 파인 튜닝
13.2.3 inceptionv3_retrain.py
13.2.4 inceptionv3_inference.py
13.3 사전 학습된 모델을 이용한 물체 검출 수행
13.3.1 물체 검출의 개념
13.3.2 사전 학습된 Faster R-CNN 모델로 물체 검출 수행
13.3.3 faster_rcnn_inference.py
13.4 TensorFlow Hub
13.5 정리
13.6 더 공부할 것들

QuickMenu