我是 Python 和 Keras 的新用户,希望您的反馈能够指导我找到解决方案。
我想连接几个循环层来训练多输入神经网络。更具体地说,我想迭代地创建多个图层并将所有图层合并为一个图层。
为此,我创建了一个训练集字典(在本例中为两个训练集):
trainX_dict[0].shape
(11,21,6)
trainX_dict[1].shape
(11,21,6)
trainY_dict[0].shape
(11,21)
trainY_dict[1].shape
(11,21)
接下来,我创建循环层和密集层,如下所示:
branch_name={}
for i in range(1)
branch_name[i] = Sequential()
branch_name[i].add(SimpleRNN(30, input_shape=(trainX_dict[i].shape[0],trainX_dict[i].shape[2])))
branch_name[i].add(Dense(21))
在哪里:
branch_name = [<keras.models.Sequential object at 0x7f287421c9e8>, <keras.models.Sequential object at 0x7f2868e77940>]
现在,我想将这两层合并为一个。根据这个答案如何在keras中连接两层?,这应该工作:
branch_name[i].add(SimpleRNN(21, input_shape=(trainX_dict[i].shape[0],trainX_dict[i].shape[2])))
branch_name[i].add(Dense(21))
merged=Concatenate(branch_name)
final_model=Sequential()
final_model.add(Dense(21,input_shape=(trainX_dict[i].shape[0],trainX_dict[i].shape[2])))
merge2 = Concatenate([merged, final_model])
final_model.compile(optimizer='Adam', loss='binary_crossentropy', metrics=['accuracy'])