2016-11-23 114 views
0

我跑一下CNN的代码在我的机器,但它得到了一个错误的反馈。Tensorflow + Keras + Convolution2d:类型错误:“诠释”对象不是可调用

我的代码片段:

model.add(Convolution2D(4 ,3 ,5, 5, border_mode='valid' ,input_shape=(200,200,3))) 

,我也尝试:

model.add(Convolution2D(4 ,3 ,5, 5, border_mode='valid' ,input_shape=(3,200,200))) 

和错误是:


Traceback (most recent call last): 
    File "", line 1, in 
    File "/Users/liumengyang/anaconda/lib/python3.5/site-packages/spyder/utils/site/sitecustomize.py", line 866, in runfile 
    execfile(filename, namespace) 
    File "/Users/liumengyang/anaconda/lib/python3.5/site-packages/spyder/utils/site/sitecustomize.py", line 102, in execfile 
    exec(compile(f.read(), filename, 'exec'), namespace) 
    File "/Users/liumengyang/Desktop/visual/pre-processing.py", line 61, in 
    model.add(Convolution2D(4 ,3 ,5, 5, border_mode='valid' ,input_shape=(200,200,3))) 
    File "/Users/liumengyang/anaconda/lib/python3.5/site-packages/keras/models.py", line 280, in add 
    layer.create_input_layer(batch_input_shape, input_dtype) 
    File "/Users/liumengyang/anaconda/lib/python3.5/site-packages/keras/engine/topology.py", line 370, in create_input_layer 
    self(x) 
    File "/Users/liumengyang/anaconda/lib/python3.5/site-packages/keras/engine/topology.py", line 487, in __call__ 
    self.build(input_shapes[0]) 
    File "/Users/liumengyang/anaconda/lib/python3.5/site-packages/keras/layers/convolutional.py", line 410, in build 
    self.W = self.init(self.W_shape, name='{}_W'.format(self.name)) 
TypeError: 'int' object is not callable 

如何解决这个问题呢?

回答

0

我想,也许你感到困惑与tensorflow的语法。

。在你的说法,model.add(Convolution2D(4 ,3 ,5, 5, border_mode='valid' ,input_shape=(200,200,3)))一些错字,

试试这个model.add(Convolution2D(4 ,5, 5, border_mode='valid' ,input_shape=(200,200,3)))如果你想有4个过滤器,其尺寸为5×5。

+0

非常感谢您的回答。 你的建议对我很有帮助。 问题恰恰是语法错误。 对你的祝福! –

相关问题