pooling reduces computational cost and helps prevent overfitting by progressively abstracting the representation.