【发布时间】:2019-04-26 17:59:24
【问题描述】:
我正在尝试重新创建 Inception 模型版本 4。但我想在我的图像数据集标准形状 (224,224,3) 上对其进行训练,所以我没有接受任何预训练的权重。
但是我遇到了这样的错误。
x = merge([x1, x2], mode='concat', concat_axis=channel_axis)
TypeError: 'module' object is not callable
代码如下:
def inception_stem(input):
if K.image_dim_ordering() == "th":
channel_axis = 1
else:
channel_axis = -1
# Input Shape is 299 x 299 x 3 (th) or 3 x 299 x 299 (th)
x = conv_block(input, 32, 3, 3, subsample=(2, 2), border_mode='valid')
x = conv_block(x, 32, 3, 3, border_mode='valid')
x = conv_block(x, 64, 3, 3)
x1 = MaxPooling2D((3, 3), strides=(2, 2), border_mode='valid')(x)
x2 = conv_block(x, 96, 3, 3, subsample=(2, 2), border_mode='valid')
x = tf.concat([x1,x2],axis=channel_axis)
#x = merge([x1, x2], mode='concat', concat_axis=channel_axis) #here is the error occuring try find out the reason behind it
x1 = conv_block(x, 64, 1, 1)
x1 = conv_block(x1, 96, 3, 3, border_mode='valid')
x2 = conv_block(x, 64, 1, 1)
x2 = conv_block(x2, 64, 1, 7)
x2 = conv_block(x2, 64, 7, 1)
x2 = conv_block(x2, 96, 3, 3, border_mode='valid')
x = merge([x1, x2], mode='concat', concat_axis=channel_axis)
x1 = conv_block(x, 192, 3, 3, subsample=(2, 2), border_mode='valid')
x2 = MaxPooling2D((3, 3), strides=(2, 2), border_mode='valid')(x)
x = merge([x1, x2], mode='concat', concat_axis=channel_axis)
return x
我正在使用python 3.6,keras 2.2.2,tensorflow-gpu 1.9.0。
我在 GitHub 上关注了这个问题,但答案并不明确和准确。 谁能找到解决办法。
【问题讨论】:
标签: python-3.x tensorflow image-processing keras conv-neural-network