Convolutional Neural Networks (CNNs) are one of the most commonly used deep learning algorithms. They are widely used for image-related tasks, such as image recognition, object detection, image segmentation, and more. The applications of CNNs are endless, ranging from powering vision in self-driving cars to the automatic tagging of friends in our Facebook pictures. Although CNNs are widely used for image datasets, they can also be applied to textual datasets.
In this chapter, we will look at CNNs in detail and get the hang of CNNs and how they work. First, we will learn about CNNs intuitively, and then we will deep-dive into the underlying math behind them. Following this, we will come to understand how to implement a CNN in TensorFlow step by step. Moving ahead, we will explore different types of CNN architectures such as LeNet, AlexNet, VGGNet...