Original article was published by Yong Cui, Ph.D. on Artificial Intelligence on Medium
Calculation of Parameters
Let’s start with something simple. As you can notice, the number of parameters for all MaxPooling2D layers is all 0. The reason is that this layer doesn’t learn anything. What it does is to reduce the complexity of the model and to extract local features by finding the maximum values for each 2 x 2 pool.
As mentioned previously, the MaxPooling2D layer uses the output from the previous layer. Thus, the
max_pooling2d layer’s input has a shape of (26, 26, 32), which is output from the
conv2d layer. The max pooling is applied to each filter (n=32) with a shape of (26, 26). In the model, for the
max_pooling2d layer, the size of the pool is 2 x 2, and thus the shape of the data will become (13, 13), which is (26 / 2, 26 / 2).
Similarly, for the second MaxPooling2D layer (i.e.,
max_pooling2d_1), the input shape is (11, 11, 64). By applying a 2 x 2 pooling, the resulting output shape becomes (5, 5, 64), as shown in the “Output Shape” column.