A CNN is an artificial neural network introduced by
LeCun et al. [27]. A CNN consists of a stack of alternating
convolution layers and pooling layers with a number of fully
connected layers on top. Fig. 2 shows the structure of a CNN
with two pairs of convolution layers and pooling layers with
one fully connected layer on top. The filter parameters in the
convolution layers and the weight matrix in the fully connected
layers are the parameters of the CNN, which are learned
through training.