CNNs are, of course, neural networks like deep feedforward networks. CNNs are built layer by layer with learnable weights and are trained like any typical deep learning network: by minimizing the cost function and backpropagating errors. The difference lies in the way the neurons are connected. CNNs are built to work with images. Image data has two unique features that are exploited by CNNs to reduce the number of neurons, as well as to achieve a better learning:
- Images are three-dimensional volumes—width, height, and channel (channel is sometimes referred to as depth). Hence, convolutional layers take input and output in three-dimensional volumes rather than single dimension vectors.
- The pixels in a neighborhood have values that are relatable to each other. This is called spatial relation. CNNs use this feature through filters to provide local...