Having achieved a high-level understanding of the key components of a CNN, we may now proceed with actually implementing one ourselves. This will allow us to become familiar with the key architectural considerations when building convolutional networks and get an overview of the implementational details that make these networks perform so well. Soon, we will implement the convolutional layer in Keras, and explore downsampling techniques such as pooling layers to see how we can leverage a combination of convolutional, pooling, and densely connected layers for various image classification tasks.
For this example, we will adopt a simple use case. Let's say we wanted our CNN to detect human emotion, in the form of a smile or a frown. This is a simple binary classification task. How do we proceed? Well, firstly, we will need a labeled dataset of humans...