pytensor
pytensor copied to clipboard
`pool_2d` and `conv` from `pytensor.tensor.nnet` deprecated no documentation.
Description
Hi I knew using pytensor I had a code that was implemented using the old version of pytensor but now pytensor.tensor.nnet and pytensor.tensor.signal does not exits anymore I checked the documentation but it very old and it is based on a on Theano and I can't make this code to work could you please tell me that are the new submodules for pool_2d and conv
from pytensor.tensor.nnet import conv
from pytensor.tensor.signal.pool import pool_2d
#### Define layer types
class ConvPoolLayer(object):
"""Used to create a combination of a convolutional and a max-pooling
layer. A more sophisticated implementation would separate the
two, but for our purposes we'll always use them together, and it
simplifies the code, so it makes sense to combine them.
"""
# ... rest of the class
def set_inpt(self, inpt, inpt_dropout, mini_batch_size):
self.inpt = inpt.reshape(self.image_shape)
conv_out = conv.conv2d(input=self.inpt, filters=self.w, filter_shape=self.filter_shape, image_shape=self.image_shape)
pooled_out = pool_2d(input=conv_out, ws=self.poolsize, ignore_border=True)
self.output = self.activation_fn(
pooled_out + self.b.dimshuffle('x', 0, 'x', 'x'))
self.output_dropout = self.output # no dropout in the convolutional layers
This are the two calls the code does to the deprecated and old submodules:
conv_out = conv.conv2d(input=self.inpt, filters=self.w, filter_shape=self.filter_shape, image_shape=self.image_shape)
pooled_out = pool_2d(input=conv_out, ws=self.poolsize, ignore_border=True)
Related to #305 and #275
I have the exact same problem (for the chapter 6 of Neural Networks and Deep Learning).
Until https://github.com/pymc-devs/pytensor/pull/548 is merged, what alternative would you suggest to use to get a fast conv2d()?
I rebased my fork used for the #548 PR, so as a short-term solution you can pip install that fork directly to get back these Ops with pip install git+https://github.com/jessegrabowski/pytensor.git@restore-conv. I recommend you do this in an env that already had pytensor install via conda so that all the necessary BLAS stuff is handled, then use pip to change pytensor version.
If you were interested in helping to actually get this project off the ground, I'd be happy to help you along. I just don't have the free time to focus on this right now (or in the foreseeable future)