【问题标题】:Different time_step input for LSTM in KerasKeras 中 LSTM 的不同 time_step 输入
【发布时间】:2019-08-07 17:53:27
【问题描述】:

我正在尝试构建一个编码器-解码器网络来对视频数据进行分类。阅读 LSTM 单元的 Keras 文档,它期望单元有固定数量的 time_step。但是,我正在处理的数据对于每个类别都有不同的帧数。我想我可以挑选出最长的帧,然后用开始帧或最后帧填充其余的帧,但我认为模型会偏向具有相似帧的帧。有没有办法可以将具有不同time_step 的输入数据输入到 Keras 的 LSTM 单元中?我可以在序列的开头和结尾放置一个<start><end> 标记来告诉网络何时进行预测,但我不知道该怎么做。

任何帮助将不胜感激,谢谢!

【问题讨论】:

  • 为具有相同时间步长的示例制作单独的网络。

标签: keras lstm recurrent-neural-network


【解决方案1】:

阅读 LSTM 单元的 Keras 文档,它期望一个固定的 到单元格的 time_step 数。

我不知道你从哪里得到这些信息,但你可以为 lstm 传递可变长度序列(可变 time_step dim)。 LSTM 类是 RNN 类的子类,keras RNN 文档说。

该层支持对可变数量的输入数据进行屏蔽 时间步长

为了将可变长度序列输入 LSTM,时间步长维度应为None。例如

model = Sequential()
model.add(LSTM(32, input_shape=(None, 10)))

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-01-22
    • 1970-01-01
    • 2018-11-26
    • 2018-02-10
    • 1970-01-01
    • 1970-01-01
    • 2017-07-30
    相关资源
    最近更新 更多