Obsolete/erroneous DeepLearningTutorials convolutional_mlp.py 中的代码?
Obsolete/erroneous code in convolutional_mlp.py at DeepLearningTutorials?
This 代码包含以下花絮:
from theano.tensor.nnet import conv2d
...
# convolve input feature maps with filters
conv_out = conv2d(
input=input,
filters=self.W,
filter_shape=filter_shape,
input_shape=image_shape
)
由于未找到“input_shape
”而引发异常,尽管在 documentation 中提到:
"image_shape ... – Deprecated alias for input_shape"
在本地和 source 中查看 conv.py 我发现:
def conv2d(input, filters, image_shape=None, filter_shape=None,
border_mode='valid', subsample=(1, 1), **kargs):
不用说了,也没有input_shape的踪迹。
如果将上面的代码修改如下
# convolve input feature maps with filters
conv_out = conv2d(
input=input,
filters=self.W,
filter_shape=filter_shape,
image_shape=image_shape
)
,异常消失,代码正常运行。
我错过了什么?如果 image_shape
被弃用,为什么它有效而 input_shape
无效?
repository 的 theano
版本是否已过时?
PS: 我想直接问 http://deeplearning.net 的人,但我找不到方法。
您确定安装了最新版本吗?
conv.py
contains the deprecated implementation of conv2d. The new implementation can be found in __init__.py
确保您使用的是导入语句
from theano.tensor.nnet import conv2d
而不是
from theano.tensor.nnet.conv import conv2d
因为第二个将导入已弃用的实现
This 代码包含以下花絮:
from theano.tensor.nnet import conv2d
...
# convolve input feature maps with filters
conv_out = conv2d(
input=input,
filters=self.W,
filter_shape=filter_shape,
input_shape=image_shape
)
由于未找到“input_shape
”而引发异常,尽管在 documentation 中提到:
"image_shape ... – Deprecated alias for input_shape"
在本地和 source 中查看 conv.py 我发现:
def conv2d(input, filters, image_shape=None, filter_shape=None,
border_mode='valid', subsample=(1, 1), **kargs):
不用说了,也没有input_shape的踪迹。 如果将上面的代码修改如下
# convolve input feature maps with filters
conv_out = conv2d(
input=input,
filters=self.W,
filter_shape=filter_shape,
image_shape=image_shape
)
,异常消失,代码正常运行。
我错过了什么?如果 image_shape
被弃用,为什么它有效而 input_shape
无效?
repository 的 theano
版本是否已过时?
PS: 我想直接问 http://deeplearning.net 的人,但我找不到方法。
您确定安装了最新版本吗?
conv.py
contains the deprecated implementation of conv2d. The new implementation can be found in __init__.py
确保您使用的是导入语句
from theano.tensor.nnet import conv2d
而不是
from theano.tensor.nnet.conv import conv2d
因为第二个将导入已弃用的实现