𝔖 Scriptorium
✦   LIBER   ✦

📁

Advanced Deep Learning with Python: Design and implement advanced next-generation AI solutions using TensorFlow and PyTorch

✍ Scribed by Ivan Vasilev


Publisher
Packt Publishing
Year
2019
Tongue
English
Leaves
456
Category
Library

⬇  Acquire This Volume

No coin nor oath required. For personal study only.

✦ Synopsis


Gain expertise in advanced deep learning domains such as neural networks, meta-learning, graph neural networks, and memory augmented neural networks using the Python ecosystem

Key Features

  • Get to grips with building faster and more robust deep learning architectures
  • Investigate and train convolutional neural network (CNN) models with GPU-accelerated libraries such as TensorFlow and PyTorch
  • Apply deep neural networks (DNNs) to computer vision problems, NLP, and GANs

Book Description

In order to build robust deep learning systems, you'll need to understand everything from how neural networks work to training CNN models. In this book, you'll discover newly developed deep learning models, methodologies used in the domain, and their implementation based on areas of application.

You'll start by understanding the building blocks and the math behind neural networks, and then move on to CNNs and their advanced applications in computer vision. You'll also learn to apply the most popular CNN architectures in object detection and image segmentation. Further on, you'll focus on variational autoencoders and GANs. You'll then use neural networks to extract sophisticated vector representations of words, before going on to cover various types of recurrent networks, such as LSTM and GRU. You'll even explore the attention mechanism to process sequential data without the help of recurrent neural networks (RNNs). Later, you'll use graph neural networks for processing structured data, along with covering meta-learning, which allows you to train neural networks with fewer training samples. Finally, you'll understand how to apply deep learning to autonomous vehicles.

By the end of this book, you'll have mastered key deep learning concepts and the different applications of deep learning models in the real world.

What you will learn

  • Cover advanced and state-of-the-art neural network architectures
  • Understand the theory and math behind neural networks
  • Train DNNs and apply them to modern deep learning problems
  • Use CNNs for object detection and image segmentation
  • Implement generative adversarial networks (GANs) and variational autoencoders to generate new images
  • Solve natural language processing (NLP) tasks, such as machine translation, using sequence-to-sequence models
  • Understand DL techniques, such as meta-learning and graph neural networks

Who this book is for

This book is for data scientists, deep learning engineers and researchers, and AI developers who want to further their knowledge of deep learning and build innovative and unique deep learning projects. Anyone looking to get to grips with advanced use cases and methodologies adopted in the deep learning domain using real-world examples will also find this book useful. Basic understanding of deep learning concepts and working knowledge of the Python programming language is assumed.

Table of Contents

  1. The Nuts and Bolts of Neural Networks
  2. Understanding Convolutional Networks
  3. Advanced Convolutional Networks
  4. Object Detection and Image Segmentation
  5. Generative Models
  6. Language Modelling
  7. Understanding Recurrent Networks
  8. Sequence-to-Sequence Models and Attention
  9. Emerging Neural Network Designs
  10. Meta Learning
  11. Deep Learning for Autonomous Vehicles

✦ Table of Contents


Cover
Title Page
Copyright and Credits
About Packt
Contributors
Table of Contents
Preface
Section 1: Core Concepts
Chapter 1: The Nuts and Bolts of Neural Networks
The mathematical apparatus of NNs
Linear algebra
Vector and matrix operations
Introduction to probability
Probability and sets
Conditional probability and the Bayes rule
Random variables and probability distributions
Probability distributions
Information theory
Differential calculus
A short introduction to NNs
Neurons
Layers as operations
NNs
Activation functions
The universal approximation theorem
Training NNs
Gradient descent
Cost functions
Backpropagation
Weight initialization
SGD improvements
Summary
Section 2: Computer Vision
Chapter 2: Understanding Convolutional Networks
Understanding CNNs
Types of convolutions
Transposed convolutions
1×1 convolutions
Depth-wise separable convolutions
Dilated convolutions
Improving the efficiency of CNNs
Convolution as matrix multiplication
Winograd convolutions
Visualizing CNNs
Guided backpropagation
Gradient-weighted class activation mapping
CNN regularization
Introducing transfer learning
Implementing transfer learning with PyTorch
Transfer learning with TensorFlow 2.0
Summary
Chapter 3: Advanced Convolutional Networks
Introducing AlexNet
An introduction to Visual Geometry Group 
VGG with PyTorch and TensorFlow
Understanding residual networks
Implementing residual blocks
Understanding Inception networks
Inception v1
Inception v2 and v3
Inception v4 and Inception-ResNet
Introducing Xception
Introducing MobileNet
An introduction to DenseNets
The workings of neural architecture search
Introducing capsule networks
The limitations of convolutional networks
Capsules
Dynamic routing
The structure of the capsule network
Summary
Chapter 4: Object Detection and Image Segmentation
Introduction to object detection
Approaches to object detection
Object detection with YOLOv3
A code example of YOLOv3 with OpenCV
Object detection with Faster R-CNN
Region proposal network
Detection network
Implementing Faster R-CNN with PyTorch
Introducing image segmentation
Semantic segmentation with U-Net
Instance segmentation with Mask R-CNN
Implementing Mask R-CNN with PyTorch
Summary
Chapter 5: Generative Models
Intuition and justification of generative models
Introduction to VAEs
Generating new MNIST digits with VAE
Introduction to GANs
Training GANs
Training the discriminator
Training the generator
Putting it all together
Problems with training GANs
Types of GAN
Deep Convolutional GAN
Implementing DCGAN
Conditional GAN
Implementing CGAN
Wasserstein GAN
Implementing WGAN
Image-to-image translation with CycleGAN
Implementing CycleGAN
Building the generator and discriminator
Putting it all together
Introducing artistic style transfer
Summary
Section 3: Natural Language and Sequence Processing
Chapter 6: Language Modeling
Understanding n-grams
Introducing neural language models
Neural probabilistic language model
Word2Vec
CBOW
Skip-gram
fastText
Global Vectors for Word Representation model
Implementing language models
Training the embedding model
Visualizing embedding vectors
Summary
Chapter 7: Understanding Recurrent Networks
Introduction to RNNs
RNN implementation and training
Backpropagation through time
Vanishing and exploding gradients
Introducing long short-term memory
Implementing LSTM
Introducing gated recurrent units
Implementing GRUs
Implementing text classification
Summary
Chapter 8: Sequence-to-Sequence Models and Attention
Introducing seq2seq models
Seq2seq with attention
Bahdanau attention
Luong attention
General attention
Implementing seq2seq with attention
Implementing the encoder
Implementing the decoder
Implementing the decoder with attention
Training and evaluation
Understanding transformers
The transformer attention
The transformer model
Implementing transformers
Multihead attention
Encoder
Decoder
Putting it all together
Transformer language models
Bidirectional encoder representations from transformers
Input data representation
Pretraining
Fine-tuning
Transformer-XL
Segment-level recurrence with state reuse
Relative positional encodings
XLNet
Generating text with a transformer language model
Summary
Section 4: A Look to the Future
Chapter 9: Emerging Neural Network Designs
Introducing Graph NNs
Recurrent GNNs
Convolutional Graph Networks
Spectral-based convolutions
Spatial-based convolutions with attention
Graph autoencoders
Neural graph learning
Implementing graph regularization
Introducing memory-augmented NNs
Neural Turing machines
MANN*
Summary
Chapter 10: Meta Learning
Introduction to meta learning
Zero-shot learning
One-shot learning
Meta-training and meta-testing
Metric-based meta learning
Matching networks for one-shot learning
Siamese networks
Implementing Siamese networks
Prototypical networks
Optimization-based learning
Summary
Chapter 11: Deep Learning for Autonomous Vehicles
Introduction to AVs
Brief history of AV research
Levels of automation
Components of an AV system 
Environment perception
Sensing
Localization
Moving object detection and tracking
Path planning
Introduction to 3D data processing
Imitation driving policy
Behavioral cloning with PyTorch
Generating the training dataset
Implementing the agent neural network
Training
Letting the agent drive
Putting it all together
Driving policy with ChauffeurNet
Input and output representations
Model architecture
Training
Summary
Other Books You May Enjoy
Index

✦ Subjects


COM044000 - COMPUTERS / Neural Networks, COM016000 - COMPUTERS / Computer Vision and Pattern Recognition, COM062000 - COMPUTERS / Data Modeling and Design


📜 SIMILAR VOLUMES


Advanced deep learning with Python: desi
✍ Vasilev, Ivan 📂 Library 📅 2019 🏛 Packt Publishing 🌐 English

This book is an expert-level guide to master the neural network variants using the Python ecosystem. You will gain the skills to build smarter, faster, and efficient deep learning systems with practical examples. By the end of this book, you will be up to date with the latest advances and current re

Hands-On Transfer Learning with Python I
✍ Dipanjan Sarkar, Raghav Bali, Tamoghna Ghosh 📂 Library 📅 2018 🏛 Packt Publishing 🌐 English

Deep learning simplified by taking supervised, unsupervised, and reinforcement learning to the next level using the Python ecosystem Key Features • Build deep learning models with transfer learning principles in Python • implement transfer learning to solve real-world research problems • Perfo

Automated Deep Learning Using Neural Net
✍ Ivan Gridin 📂 Library 📅 2022 🏛 Apress 🌐 English

<p><span>Optimize, develop, and design PyTorch and TensorFlow models for a specific problem using the Microsoft Neural Network Intelligence (NNI) toolkit. This book includes practical examples illustrating automated deep learning approaches and provides techniques to facilitate your deep learning mo