Book Image

Advanced Deep Learning with TensorFlow 2 and Keras - Second Edition

By : Rowel Atienza
Book Image

Advanced Deep Learning with TensorFlow 2 and Keras - Second Edition

By: Rowel Atienza

Overview of this book

Advanced Deep Learning with TensorFlow 2 and Keras, Second Edition is a completely updated edition of the bestselling guide to the advanced deep learning techniques available today. Revised for TensorFlow 2.x, this edition introduces you to the practical side of deep learning with new chapters on unsupervised learning using mutual information, object detection (SSD), and semantic segmentation (FCN and PSPNet), further allowing you to create your own cutting-edge AI projects. Using Keras as an open-source deep learning library, the book features hands-on projects that show you how to create more effective AI with the most up-to-date techniques. Starting with an overview of multi-layer perceptrons (MLPs), convolutional neural networks (CNNs), and recurrent neural networks (RNNs), the book then introduces more cutting-edge techniques as you explore deep neural network architectures, including ResNet and DenseNet, and how to create autoencoders. You will then learn about GANs, and how they can unlock new levels of AI performance. Next, you’ll discover how a variational autoencoder (VAE) is implemented, and how GANs and VAEs have the generative power to synthesize data that can be extremely convincing to humans. You'll also learn to implement DRL such as Deep Q-Learning and Policy Gradient Methods, which are critical to many modern results in AI.
Table of Contents (16 chapters)
14
Other Books You May Enjoy
15
Index

4. Encoder network for unsupervised clustering

The encoder network implementation for unsupervised clustering is shown in Figure 13.4.1. It is an encoder with a VGG-like [2] backbone and a Dense layer with a softmax output. The simplest VGG-11 has a backbone, as shown in Figure 13.4.2.

For MNIST, using the simplest VGG-11 backbone decimates the feature map size to zero from 5 times the MaxPooling2D operations. Therefore, a scaled-down version of the VGG-11 backbone is used, as shown in Figure 13.4.3, when implemented in Keras. The same set of filters is used.

Figure 13.4.1 Network implementation of IIC encoder network . The input MNIST image is center cropped to 24 x 24 pixels. In this example, is a random 24 x 24-pixel cropping operation.

Figure 13.4.2 VGG-11 classifier backbone

In Figure 13.4.3, there are 4 Conv2D-BN-ReLU Activation-MaxPooling2D layers with filter sizes (64,128,256,512). The last Conv2D layer does not use MaxPooling2D. Therefore...