如何在 Keras 中声明多输入 LSTM 模型?

How to declare multiple inputs LSTM model in Keras?

我有一个声明 LSTM 的 Keras 代码。但是我注意到 Container class 已经在最新版本中被删除了。 https://keras.io/layers/containers/

如何以最新格式为 LSTM 声明多个输入?我想连接 LSTM 输入的所有输入。

虽然我注意到类似的 post,但我想做的是模型的声明。

```

g = Graph()
g.add_input(
    name='i1',
    input_shape=(None, i1_size)
)
g.add_input(
    name='i2',
    input_shape=(None, i2_size)
)
g.add_node(
    LSTM(
        n_hidden,
        return_sequences=True,
        activation='tanh'
    ),
    name='h1',
    inputs=[
        'i1',
        'i2'
    ]
)

```

哦,我可以像下面那样将 input_shape 设置为 (i1_size+i2_size) 吗?

model = Sequential()
model.add(LSTM(n_hidden, input_shape=(None, i1_size+i2_size), activation='tanh', return_sequences=True))

您问的是:

Oh, May I just set input_shape as (i1_size+i2_size) like below?

model = Sequential()
model.add(LSTM(n_hidden, input_shape=(None, i1_size+i2_size), activation='tanh', return_sequences=True))

是的,杰夫。请记住,您在 (None, i1_size+i2_size) 中的 None 是 RNN 时间的数量 steps/input_length 并且需要注意何时可以跳过定义它。有关详细信息,请参阅 https://keras.io/layers/recurrent/input_length 的说明。

仅供参考 input_shape=(None, i1_size+i2_size) 也可以写成 input_dim=i1_size+i2_size(假设您不包括 input_length)。