Book Image

The Deep Learning Workshop

By : Mirza Rahim Baig, Thomas V. Joseph, Nipun Sadvilkar, Mohan Kumar Silaparasetty, Anthony So
Book Image

The Deep Learning Workshop

By: Mirza Rahim Baig, Thomas V. Joseph, Nipun Sadvilkar, Mohan Kumar Silaparasetty, Anthony So

Overview of this book

Are you fascinated by how deep learning powers intelligent applications such as self-driving cars, virtual assistants, facial recognition devices, and chatbots to process data and solve complex problems? Whether you are familiar with machine learning or are new to this domain, The Deep Learning Workshop will make it easy for you to understand deep learning with the help of interesting examples and exercises throughout. The book starts by highlighting the relationship between deep learning, machine learning, and artificial intelligence and helps you get comfortable with the TensorFlow 2.0 programming structure using hands-on exercises. You’ll understand neural networks, the structure of a perceptron, and how to use TensorFlow to create and train models. The book will then let you explore the fundamentals of computer vision by performing image recognition exercises with convolutional neural networks (CNNs) using Keras. As you advance, you’ll be able to make your model more powerful by implementing text embedding and sequencing the data using popular deep learning solutions. Finally, you’ll get to grips with bidirectional recurrent neural networks (RNNs) and build generative adversarial networks (GANs) for image synthesis. By the end of this deep learning book, you’ll have learned the skills essential for building deep learning models with TensorFlow and Keras.
Table of Contents (9 chapters)

Convolutional Neural Networks

In Chapter 2, Neural Networks, you learned about traditional neural networks, such as perceptrons, that are composed of fully connected layers (also called dense layers). Each layer is composed of neurons that perform matrix multiplication, followed by a non-linear transformation with an activation function.

CNNs are actually very similar to traditional neural networks, but instead of using fully connected layers, they use convolutional layers. Each convolution layer will have a defined number of filters (or kernels) that will apply the convolution operation with a given stride on an input image with or without padding and can be followed by an activation function.

CNNs are widely used for image classification, where the network will have to predict the right class for a given input. This is exactly the same as classification problems for traditional machine learning algorithms. If the output can only be from two different classes, it will be a binary...