Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make Theano's max_pool_2d support strides and support padding with 0 (to support size preserving version) #2196

Closed
2 tasks done
carriepl opened this issue Oct 20, 2014 · 4 comments
Assignees

Comments

@carriepl
Copy link
Contributor

Allow max_pool_2d (in theano.tensor.signal.downsample) to work with strides that differ from the size of the pooling region.

  • support stride
  • support pad
@benanne
Copy link
Contributor

benanne commented Oct 21, 2014

This would be awesome, it seems like strided pooling is an essential component of many state of the art network architectures lately.

One more addition that would be interesting is the support of implicit zero padding around the input. For example, in the GoogLeNet architecture, a component of the 'inception module' is a 3x3 pooling layer with stride 1, that has the same output dimensions as the input. This is only possible if the input is first padded with a border of zeros with width 1. Explicitly doing this padding would require a copy operation, which slows things down unnecessarily. I guess it comes down to substituting a zero whenever an index is out of bounds, so this should be straightforward to implement.

@nouiz nouiz changed the title Make Theano's max_pool_2d support strides Make Theano's max_pool_2d support strides and support padding with 0 (to support size preserving version) Oct 21, 2014
@ebattenberg
Copy link

The pooling routines from Caffe support these options if you can convince @f0k to pull them in. http://caffe.berkeleyvision.org/tutorial/layers.html

SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Oct 28, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Nov 11, 2014
@lamblin lamblin self-assigned this Nov 11, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Nov 19, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Nov 29, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 4, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 17, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 17, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 17, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 17, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 17, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Dec 17, 2014
lamblin added a commit that referenced this issue Dec 19, 2014
DownsampleFactorMax support strides: issue #2196
daemonmaker pushed a commit to daemonmaker/Theano that referenced this issue Dec 24, 2014
daemonmaker pushed a commit to daemonmaker/Theano that referenced this issue Dec 24, 2014
daemonmaker pushed a commit to daemonmaker/Theano that referenced this issue Dec 24, 2014
daemonmaker pushed a commit to daemonmaker/Theano that referenced this issue Dec 24, 2014
daemonmaker pushed a commit to daemonmaker/Theano that referenced this issue Dec 24, 2014
daemonmaker pushed a commit to daemonmaker/Theano that referenced this issue Dec 24, 2014
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Jan 20, 2015
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Jan 20, 2015
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Jan 20, 2015
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Jan 20, 2015
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Jan 20, 2015
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Jan 20, 2015
SinaHonari pushed a commit to SinaHonari/Theano that referenced this issue Jan 20, 2015
@bartvm bartvm added the CCW label Jan 20, 2015
@nouiz
Copy link
Member

nouiz commented Feb 20, 2015

Update, the support for stride on the CPU (with only python code) is merged.

@lamblin
Copy link
Member

lamblin commented Mar 9, 2015

Padding was added in #2543.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

6 participants