我正在使用tensorflow 1.8.0
和keras 2.2.2
运行程序
我有以下模型架构:
in1 = Input(name='in1', shape=(None, 1))
in2 = Input(name='in2', shape=(None, 1))
embedding = Embedding(1000, 50)
e_in1 = embedding(in1)
e_in2 = embedding(in2)
cross = Dot(axes=[3, 3], normalize=False)([e_in1, e_in2])
cross = Conv2D(1, 3, activation='relu', name="conv", padding='same')(cross)
但是到达Conv2D
层时,出现以下错误:
回溯(最近通话最近一次):
文件 “ /usr/local/lib/python3.5/dist-packages/IPython/core/interactiveshell.py”, 第2910行,在run_code中 exec(code_obj,self.user_global_ns,self.user_ns)文件“”,第1行,在 交叉= Conv2D(1,3,激活='relu',name =“ conv”,padding ='same')(交叉)文件 “ /usr/local/lib/python3.5/dist-packages/keras/engine/base_layer.py”, 第474行,在致电中 output_shape = self.compute_output_shape(input_shape)文件“ /usr/local/lib/python3.5/dist-packages/keras/layers/convolutional.py”, 第195行,在compute_output_shape中 self.kernel_size [i],IndexError:元组索引超出范围
我看到了here与keras版本有关的解决方案,但是我认为这里并不相同,因为我的keras版本与使用同一层Conv2D
的另一个程序很好地兼容。
有人可以给我一些提示吗?
预先感谢