我是keras的新手,并且还没有想出尺寸规则。我使用TF后端并使用下面的代码继续获取此ValueError。想法是使用2个1D卷积层,每个卷积层需要处理1个长度为6的时间序列阵列。然后,这些卷的输出需要合并并在2D卷积层中进行卷积。谢谢你的帮助。
NN1 = Sequential()
NN1.add(Convolution1D(4, 2,
input_dim=6,
activation='relu'))
NN2 = Sequential()
NN2.add(Convolution1D(4, 2,
input_dim=6,
activation='relu'))
TNN = Sequential()
TNN.add(Merge([NN1, NN2], mode='concat', concat_axis=1))
TNN.add(Convolution2D(2, 2, 2, input_shape=(2, 4, 1, 2), activation='relu'))
ValueError: Input 0 is incompatible with layer convolution2d_1: expected ndim=4, found ndim=3
答案 0 :(得分:1)
谈话结束后,我建议你做以下事情:
TNN.add(Merge([NN1, NN2], mode='concat', concat_axis=-1))
TNN.add(Convolution1D(2, 2, activation='relu'))
TNN.add(GlobalMaxPooling1D())
TNN.add(Dense(...)) # Put your parameters here.