# Pooling:
Pooling is just a filter that calculates the max/average of the layer it is sliding over. The notation for pooling is same as for convolution. Max pooling seems to have gained more popularity than other types of pooling because of its effectiveness.
A convolution layer + a pooling layer is still called one layer. This is because there are no learnable parameters in a pooling layer.
## Global Average Pooling
Global average pooling comes from this paper http://arxiv.org/pdf/1312.4400.pdf #📖
Basic idea is that if the last layer of the CNN has a dimension say (8, 8, 10). Instead of flattening it out into 640 nodes and building a dense layer on top of that, just average each channel into (1,1,10) matrix which when flattened becomes 10 nodes. [[Softmax]] is directly applied on it to get the output of the network instead of having a dense layer on top. Looks like it is used a lot in [[Natural Language Processing]]
It is also used in computer vision problems for [[Interpretability of Models|Class Activation Map]]