Update to Theano dev version. There was update to it since the last release
that could help you.

Fred

Le 11 oct. 2016 01:31, "狄凯" <[email protected]> a écrit :

> Hi guys, I'm trying to use theano bilinear_upsampling function to write a
> custom layer for Keras.
> I just failed to make a simple function with it.
> Below is my example showing this failure:
>
> import theano.tensor as T
> from theano import function
> from theano.tensor.nnet.abstract_conv import bilinear_upsampling
> x = T.tensor4('x')
> y = bilinear_upsampling(x, 2)
>
> I get the following error:
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
>   File "/home/dikai/bin/anaconda2/lib/python2.7/site-packages/
> theano/tensor/nnet/abstract_conv.py", line 569, in bilinear_upsampling
>     row * ratio, col * ratio))
>   File 
> "/home/dikai/bin/anaconda2/lib/python2.7/site-packages/theano/tensor/var.py",
> line 327, in reshape
>     return theano.tensor.basic.reshape(self, shape, ndim=ndim)
>   File 
> "/home/dikai/bin/anaconda2/lib/python2.7/site-packages/theano/tensor/basic.py",
> line 4526, in reshape
>     newshape = as_tensor_variable(newshape)
>   File 
> "/home/dikai/bin/anaconda2/lib/python2.7/site-packages/theano/tensor/basic.py",
> line 208, in as_tensor_variable
>     raise AsTensorError("Cannot convert %s to TensorType" % str_x, type(x))
> theano.tensor.var.AsTensorError: ('Cannot convert (None, None,
> Elemwise{mul,no_inplace}.0, Elemwise{mul,no_inplace}.0) to TensorType',
> <type 'tuple'>)
>
> I thought the problem was because I didn't specify batch_size and
> num_input_channels of the bilinear_upsampling function, so I tested the
> following code:
>
> import theano.tensor as T
> from theano import function
> from theano.tensor.nnet.abstract_conv import bilinear_upsampling
> x = T.tensor4('x')
> y = bilinear_upsampling(x, 2, batch_size=x.shape[0],
> num_input_channels=x.shape[1])
>
> I got a different error:
>
> Traceback (most recent call last):
>   File "<stdin>", line 1, in <module>
>   File "/home/dikai/bin/anaconda2/lib/python2.7/site-packages/
> theano/tensor/nnet/abstract_conv.py", line 542, in bilinear_upsampling
>     filter_flip=True)
>   File "/home/dikai/bin/anaconda2/lib/python2.7/site-packages/
> theano/tensor/nnet/abstract_conv.py", line 241, in conv2d_grad_wrt_inputs
>     integer_types, type(None)))
> AssertionError
>
> I also checked the source code that raised this error:
>
> # checking the type of input_shape
> for dim in [0, 1]:
> assert isinstance(input_shape[dim], (theano.tensor.TensorConstant,
>
> integer_types, type(None)))
>
> I don't know if this is a bug or not. Or can anyone provide a working
> example that upsamples a 4D tensor using this function (assuming actual
> shape of x is known only at runtime)?
>
> --
>
> ---
> You received this message because you are subscribed to the Google Groups
> "theano-users" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to [email protected].
> For more options, visit https://groups.google.com/d/optout.
>

-- 

--- 
You received this message because you are subscribed to the Google Groups 
"theano-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to