python中keras_Python Keras多输入层 - 如何连接/合并?

在python中,我试图在keras中使用Sequential构建一个神经网络模型来执行二进制分类 . 注意,X是时间序列数据59x1000x3(样本x时间步长x特征)的numpy数组,D是59x100的numpy数组(样本x辅助特征) . 我想通过一个lstm层传递时间序列,然后在后一层增加附带的功能(即连接两个层) .

我的代码适合模型如下:

def fit_model(X, y, D, neurons, batch_size, nb_epoch):

model = Sequential()

model.add(LSTM(units = neurons, input_shape = (X.shape[1], X.shape[2]))

model.add(Dropout(0.1))

model.add(Dense(10))

input1 = Sequential()

d = K.variable(D)

d_input = Input(tensor=d)

input1.add(InputLayer(input_tensor=d_input))

input1.add(Dropout(0.1))

input1.add(Dense(10))

final_model = Sequential()

merged = Concatenate([model, input1])

final_model.add(merged)

final_model.add(Dense(1, activation='sigmoid'))

final_model.compile(loss = 'binary_crossentropy', optimizer = 'adam')

final_model.fit(X, y, batch_size = batch_size, epochs = nb_epoch)

return final_model

我收到以下错误:

ValueError:应在至少2个输入的列表上调用Concatenate层

我尝试使用合并/连接/功能api /不是功能api的各种排列,但我继续着陆时遇到某种错误 . 我从keras.engine.topology看到了使用Merge的答案 . 但是,它现在似乎已被弃用 . 任何在使用Sequential时修复错误或如何将代码转换为功能API的建议都将受到赞赏 . 谢谢 .

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值