Real purpose of pooling Recently I had a doubt as to what is the real purpose of pooling layers in neural networks is? The most common answer is 


To select the most important feature
To increase the receptive field of the network


I feel that these are not real reasons for using a pooling layer because


There is no real need to select important features because the fully connected layer at the very end could be used to identify the most important features
The receptive field could be increased by increasing the kernel size in the successive layers.


So the only real reason for using pooling is to reduce to the size of the feature representation thus leading to smaller memory and computational footprint as the networks deeper.

Do you agree with the analogy? Do you feel there is any other reason as well?
So the only real reason for using pooling is to reduce to the size of the feature representation thus leading to smaller memory and computational footprint as the networks deeper. yes, cost efficiency but also:

Generalisation: We get rid off small--unimportant details when we combine several values into one representative one. Hence what you really get is reduced chance of overfitting