Practical convolutional neural networks implement advanced deep learning models using Python
One stop guide to implementing award-winning, and cutting-edge CNN architectures About This Book Fast-paced guide with use cases and real-world examples to get well versed with CNN techniques Implement CNN models on image classification, transfer learning, Object Detection, Instance Segmentation, GA...
Otros Autores: | , , |
---|---|
Formato: | Libro electrónico |
Idioma: | Inglés |
Publicado: |
Birmingham, [England] ; Mumbai, [India] :
Packt
2018.
|
Edición: | 1st edition |
Materias: | |
Ver en Biblioteca Universitat Ramon Llull: | https://discovery.url.edu/permalink/34CSUC_URL/1im36ta/alma991009631590406719 |
Tabla de Contenidos:
- Cover
- Title Page
- Copyright and Credits
- Packt Upsell
- Contributors
- Table of Contents
- Preface
- Chapter 1: Deep Neural Networks - Overview
- Building blocks of a neural network
- Introduction to TensorFlow
- Installing TensorFlow
- For macOS X/Linux variants
- TensorFlow basics
- Basic math with TensorFlow
- Softmax in TensorFlow
- Introduction to the MNIST dataset
- The simplest artificial neural network
- Building a single-layer neural network with TensorFlow
- Keras deep learning library overview
- Layers in the Keras model
- Handwritten number recognition with Keras and MNIST
- Retrieving training and test data
- Flattened data
- Visualizing the training data
- Building the network
- Training the network
- Testing
- Understanding backpropagation
- Summary
- Chapter 2: Introduction to Convolutional Neural Networks
- History of CNNs
- Convolutional neural networks
- How do computers interpret images?
- Code for visualizing an image
- Dropout
- Input layer
- Convolutional layer
- Convolutional layers in Keras
- Pooling layer
- Practical example - image classification
- Image augmentation
- Summary
- Chapter 3: Build Your First CNN and Performance Optimization
- CNN architectures and drawbacks of DNNs
- Convolutional operations
- Pooling, stride, and padding operations
- Fully connected layer
- Convolution and pooling operations in TensorFlow
- Applying pooling operations in TensorFlow
- Convolution operations in TensorFlow
- Training a CNN
- Weight and bias initialization
- Regularization
- Activation functions
- Using sigmoid
- Using tanh
- Using ReLU
- Building, training, and evaluating our first CNN
- Dataset description
- Step 1 - Loading the required packages
- Step 2 - Loading the training/test images to generate train/test set
- Step 3- Defining CNN hyperparameters.
- Step 4 - Constructing the CNN layers
- Step 5 - Preparing the TensorFlow graph
- Step 6 - Creating a CNN model
- Step 7 - Running the TensorFlow graph to train the CNN model
- Step 8 - Model evaluation
- Model performance optimization
- Number of hidden layers
- Number of neurons per hidden layer
- Batch normalization
- Advanced regularization and avoiding overfitting
- Applying dropout operations with TensorFlow
- Which optimizer to use?
- Memory tuning
- Appropriate layer placement
- Building the second CNN by putting everything together
- Dataset description and preprocessing
- Creating the CNN model
- Training and evaluating the network
- Summary
- Chapter 4: Popular CNN Model Architectures
- Introduction to ImageNet
- LeNet
- AlexNet architecture
- Traffic sign classifiers using AlexNet
- VGGNet architecture
- VGG16 image classification code example
- GoogLeNet architecture
- Architecture insights
- Inception module
- ResNet architecture
- Summary
- Chapter 5: Transfer Learning
- Feature extraction approach
- Target dataset is small and is similar to the original training dataset
- Target dataset is small but different from the original training dataset
- Target dataset is large and similar to the original training dataset
- Target dataset is large and different from the original training dataset
- Transfer learning example
- Multi-task learning
- Summary
- Chapter 6: Autoencoders for CNN
- Introducing to autoencoders
- Convolutional autoencoder
- Applications
- An example of compression
- Summary
- Chapter 7: Object Detection and Instance Segmentation with CNN
- The differences between object detection and image classification
- Why is object detection much more challenging than image classification?
- Traditional, nonCNN approaches to object detection.
- Haar features, cascading classifiers, and the Viola-Jones algorithm
- Haar Features
- Cascading classifiers
- The Viola-Jones algorithm
- R-CNN - Regions with CNN features
- Fast R-CNN - fast region-based CNN
- Faster R-CNN - faster region proposal network-based CNN
- Mask R-CNN - Instance segmentation with CNN
- Instance segmentation in code
- Creating the environment
- Installing Python dependencies (Python2 environment)
- Downloading and installing the COCO API and detectron library (OS shell commands)
- Preparing the COCO dataset folder structure
- Running the pre-trained model on the COCO dataset
- References
- Summary
- Chapter 8: GAN: Generating New Images with CNN
- Pix2pix - Image-to-Image translation GAN
- CycleGAN
- Training a GAN model
- GAN - code example
- Calculating loss
- Adding the optimizer
- Semi-supervised learning and GAN
- Feature matching
- Semi-supervised classification using a GAN example
- Deep convolutional GAN
- Batch normalization
- Summary
- Chapter 9: Attention Mechanism for CNN and Visual Models
- Attention mechanism for image captioning
- Types of Attention
- Hard Attention
- Soft Attention
- Using attention to improve visual models
- Reasons for sub-optimal performance of visual CNN models
- Recurrent models of visual attention
- Applying the RAM on a noisy MNIST sample
- Glimpse Sensor in code
- References
- Summary
- Other Books You May Enjoy
- Index.