Convolutional Neural Networks (CNNs) are at the heart of this deep learning revolution for improving the task of image classification. CNNs are specialized neural networks to handle image data. As a quick brush-up, CNNs help us infer shift and space invariant features through their shared weight architectures, and are basically a variant of feed forward networks. We have already covered the basics of CNNs in detail in Chapter 3, Understanding Deep Learning Architectures, and Chapter 5, Unleashing the Power of Transfer Learning. Before we move on, readers are encouraged to have a quick refresher for a better understanding. The following image showcases a typical CNN in action:
Neural networks arrived on the scene of image classification competitions as early as 2011...