NEW
A pooling operation that outputs the maximum value within each window to downsample feature maps.
DESCRIPTION
Max pooling reduces spatial dimensions by taking the maximum value from non-overlapping or strided windows. It introduces translation invariance and emphasizes strong activations. Common choices include 2×2 windows with stride 2 in CNNs. While historically dominant, some modern architectures reduce or replace pooling with strided convolutions. Overuse can discard fine detail; combining with average pooling or careful architecture design can balance invariance and information retention.
ALTERNATIVE DEFINITIONS
PyTorch
Applies a 2D max pooling over an input signal composed of several input planes.
Concise implementation-level definition widely used in practice.
Stanford CS231n
It is common to periodically insert a Pooling layer in-between successive Conv layers in a ConvNet. Its function is to progressively reduce the spatial size of the representation.
Explains purpose of pooling within CNN architectures.
Wikipedia
Max pooling takes the maximum value over an input window for each feature map, reducing its spatial dimensions.
Generic description applicable to many CNN variants.
RELATED TERMS
Convolutional Neural Network Stride ReLU Batch Normalization Feature Map Kernel Padding
COMPETING TERMS
Pooling Global Average Pooling
RELATIONS
- Broader: Pooling
KNOWLEDGE AREAS
TARGET AUDIENCE
AI Engineer Data Scientist MLOps Engineer Software Developer
EXTERNAL SOURCES
- Wikipedia - Convolutional neural network#Pooling layer
- PyTorch - Official MaxPool2d API
- TensorFlow - Keras MaxPooling2D layer docs
- Stanford CS231n - CNN notes on pooling layers
TOP QUESTIONS
What is Max Pooling in CNNs?
It downsamples feature maps by taking the maximum in each window, adding translation invariance and emphasizing strong activations.
Category: Definition
Why use Max Pooling instead of Average Pooling?
Max pooling preserves peak activations and can sharpen salient features, while average pooling smooths them.
Category: Opinion
What kernel and stride are typical for Max Pooling?
2×2 kernel with stride 2 is common, halving spatial dimensions.
Category: Requirements
What are common mistakes with Max Pooling?
Over-aggressive pooling early in networks can discard fine details important for localization tasks.
Category: Mistakes
Is Max Pooling still used in modern architectures?
Yes, though some models replace it with strided convolutions or attention-based downsampling.
Category: Opinion
How does Max Pooling affect invariance?
It increases local translation invariance by reducing sensitivity to small shifts within pooling windows.
Category: Example
Can Max Pooling be global?
Global max pooling takes the maximum over the entire spatial extent, yielding one value per feature map.
Category: Example
What is the risk of only using Max Pooling?
It may overemphasize noise spikes or lose average context; complement with average pooling or careful design.
Category: Risk
How to implement Max Pooling efficiently?
Use optimized library layers, ensure correct padding/stride settings, and profile memory for large batches.
Category: Requirements