我所遵循的大多数教程都展示了我如何使用Keras将一个输入提供到Dense网络的第一层中:
Inp = Input(shape=(1,))
x = Dense(100, activation='relu', name = "Dense_1")(Inp)
x = Dense(100, activation='relu', name = "Dense_2")(x)
output = Dense(50, activation='softmax', name = "outputL")(x)
但是,如果我想在密集网络的第一层提供2个或更多输入,我怎么能用Keras呢?这个想法只是拥有x1
和x2
的2个输入,如下所示:
我尝试过类似这样的内容,我从Keras文档的其中一个页面上的代码段中修改过:
Inp1 = Input(shape=(1,))
Inp2 = Input(shape=(1,))
Inp = keras.layers.concatenate([Inp1, Inp2])
x = Dense(100, activation='relu', name = "Dense_1")(Inp)
x = Dense(100, activation='relu', name = "Dense_2")(x)
output = Dense(50, activation='softmax', name = "outputL")(x)
res = model.fit([x1_train, x2_train], y_train,
validation_data=([x1_test, x2_test], y_test))
但是到目前为止,我从模型训练中得到的结果似乎具有可笑的低精度。我做了什么,我实际上打算做什么?