Max-pooling / Pooling: Difference between revisions
No edit summary |
Mr. MacKenty (talk | contribs) No edit summary |
||
Line 1: | Line 1: | ||
[[file:Studying.png|right|frame|Case study notes<ref>http://www.flaticon.com/</ref>]] | [[file:Studying.png|right|frame|Case study notes<ref>http://www.flaticon.com/</ref>]] | ||
Line 13: | Line 7: | ||
<ref> the url I cited by material from </ref> | <ref> the url I cited by material from </ref> | ||
</nowiki> --> | </nowiki> --> | ||
Max pooling is a '''sample-based discretization process'''. The objective is to down-sample an input representation (image, hidden-layer output matrix, etc.), reducing its dimensionality and allowing for assumptions to be made about features contained in the sub-regions binned.<ref> | Max pooling is a '''sample-based discretization process'''. The objective is to down-sample an input representation (image, hidden-layer output matrix, etc.), reducing its dimensionality and allowing for assumptions to be made about features contained in the sub-regions binned.<ref>https://www.quora.com/What-is-max-pooling-in-convolutional-neural-networks</ref> | ||
== How does it work and why== | == How does it work and why== | ||
This is done to in part to help over-fitting by providing an abstracted form of the representation. As well, it reduces the computational cost by reducing the number of parameters to learn and provides basic translation invariance to the internal representation. | This is done to in part to help over-fitting by providing an abstracted form of the representation. As well, it reduces the computational cost by reducing the number of parameters to learn and provides basic translation invariance to the internal representation. | ||
Line 44: | Line 37: | ||
[[File:MaxpoolSample.png]] | [[File:MaxpoolSample.png]] | ||
== References == | == References == |
Latest revision as of 17:41, 27 February 2018
Introduction[edit]
Max pooling is a sample-based discretization process. The objective is to down-sample an input representation (image, hidden-layer output matrix, etc.), reducing its dimensionality and allowing for assumptions to be made about features contained in the sub-regions binned.[2]
How does it work and why[edit]
This is done to in part to help over-fitting by providing an abstracted form of the representation. As well, it reduces the computational cost by reducing the number of parameters to learn and provides basic translation invariance to the internal representation.
Max pooling is done by applying a max filter to (usually) non-overlapping subregions of the initial representation.
Examples[edit]
Let's say we have a 4x4 matrix representing our initial input. Let's say, as well, that we have a 2x2 filter that we'll run over our input. We'll have a stride of 2 (meaning the (dx, dy) for stepping over our input will be (2, 2)) and won't overlap regions.
For each of the regions represented by the filter, we will take the max of that region and create a new, output matrix where each element is the max of a region in the original input.