Max pooling versus strided convolution
downsampling tradeoffs in CNNs.
pooling downsamples and adds small translation invariance with no parameters; strided conv learns its downsampling but adds parameters.
What's really being asked
Whether you understand why CNNs downsample and can reason about two competing ways to do it rather than reciting one.
The full answer
A pooling layer reduces the spatial resolution of feature maps. Max pooling slides a window, commonly two by two with stride two, and outputs the maximum value in each window, halving height and width. Its purposes are reducing computation and memory downstream, enlarging the effective receptive field of later layers, and granting a small amount of translation invariance because the max is unchanged if the activating feature shifts slightly within the window. Pooling has no learnable parameters and is applied per channel. The alternative, strided convolution, achieves the same spatial reduction but the downsampling is learned jointly with feature extraction, so the network can choose what to keep rather than blindly taking the max.
The mistakes people make
Saying pooling has weights to train; it does not. Claiming pooling always improves accuracy; many modern architectures replace it with strided convolutions. Confusing max pooling with average pooling without noting average pooling smooths rather than selects the strongest response.
What usually comes next
When would you prefer average pooling. Why have some architectures dropped pooling entirely. How does pooling affect backpropagation, given the gradient only flows to the max element.
A concrete example
A feature map of size four by four with a two by two max pool, stride two, becomes two by two, each output being the largest of four inputs. If a detected edge shifts by one pixel but stays within the same window, the pooled output is identical, illustrating local invariance. A strided three by three convolution over the same input also produces a smaller map but learns weights, potentially retaining gradient information that max pooling would throw away.
Interview question
What is a key advantage of a strided convolution over max pooling for downsampling?
- a.It always produces a smaller output than pooling
- b.It guarantees full translation invariance
- c.It uses no parameters, saving memory
- d.It learns how to downsample instead of fixing a non-learnable ruleCorrect
Why? this is the answer
Strided convolution learns its downsampling jointly with feature extraction, unlike the fixed max rule. It actually adds parameters rather than saving them, and neither method guarantees full translation invariance.
Just read this? Test yourself on what you have been reading.
Read the original → d2l.ai
- #computer-vision
- #pooling
- #cnn
- #downsampling
- #translation-invariance
Put your scrolling time to good use
Learn one idea, try a quiz and save useful cards for revision. Tezvyn makes it easy to learn and stay current in your tech field, a few minutes at a time.
The iPhone app is on the way
We are building it. Until it lands, nothing here is held back from you: every interview card, your saved cards, streaks and the job board all work in Safari, plus hundreds of free practice quizzes of thirty questions each. Sign in and it all carries over to the app the day it arrives.
Want it as an icon? Tap Share at the bottom of Safari, then Add to Home Screen. It opens full screen and the cards you have read stay available offline.
We are hiring for this. Open roles that interview on computer-vision — each one lists the topics its interview covers.
See open roles