Pooling

After detecting local patterns, we may not need every response at its original resolution. Pooling summarises nearby values, reducing the amount of data while giving up some information about exact positions.

15 sections · 15 questions · 4 coding challenges

1 / 15

Does a Feature's Exact Pixel Position Always Matter?

BOTIE

If a handwritten stroke moves slightly, we usually still regard it as the same stroke. A feature map may change at several individual positions, though, and carrying every small positional change into the next stage can make recognition unnecessarily sensitive.

Fukushima's 1980 neocognitron alternated feature-detecting stages with stages intended to tolerate shifts. This is an important part of the history behind pooling and subsampling in later convolutional networks, though its units should not be treated as identical to a modern max-pooling operation.

Pooling summarises responses in a neighbourhood. Taking the maximum asks whether a strong response occurred somewhere inside it; taking the average measures the overall response there. A smaller output can be less sensitive to small shifts, but the summary loses detail. That tradeoff matters when the task requires precise locations rather than just recognition.

Sources for this history