Pooling Layer#
What are pooling layers?#
A pooling layer generates an output from a ‘pool’, such as a \( 2 \times 2 \) block, usually by selecting from that block. For example, commonly used pooling layers include max-pooling, which retains the maximum of every \( 2 \times 2 \) block. But there are also some fewer used layers like average pooling, which takes an weighted average from the block (acts a lot like a convolution layer).
When to use pooling layers?#
Use pooling layers when you want to drastically reduce the input size. For example, \( 2 \times 2 \) blocks reduce the height and the width by 2 times. Pooling layers also have the meaning of ‘focusing on the best part’. When you’re using a pooling layer, you usually don’t care about individual points in the input, but whether there’s something special in one region of the input.