【问题标题】:Stacked LSTM with Multiple Dense Layers After之后具有多个密集层的堆叠 LSTM
【发布时间】:2019-07-30 16:05:39
【问题描述】:

Andrew Ng 通过将循环层相互堆叠来讨论深度 RNN 架构。然而,他指出,由于结构中已经复杂的时间相关计算,这些通常仅限于 2 或 3 个循环层。但他确实补充说,人们通常在这些循环层之后添加“一堆未水平连接的深层”(显示为从 a[3] 延伸的蓝色框)。我想知道他是否只是在谈论在循环层之上堆叠密集层,还是更复杂?在 Keras 中是这样的:

model = Sequential()
model.add(keras.layers.LSTM(100, return_sequences=True, batch_input_shape=(32, 1, input_shape), stateful=True))
model.add(keras.layers.LSTM(100, return_sequences=False, stateful=True))
model.add(Dense(100, activation='relu'))
model.add(Dense(100, activation='relu'))
model.add(Dense(1, activation='sigmoid'))

【问题讨论】:

  • 我能知道在哪里可以找到这门课吗?
  • 嘿汤姆,你可以在coursera.org上得到它,我相信那里有免费课程。

标签: keras neural-network lstm


【解决方案1】:

在大多数情况下,是的,隐藏状态后的 RNN 的常见结构仅包括密集层。

但是,在自然语言处理 (NLP)(或语言建模)应用程序 (examples here) 中预测词汇表的下一个单词时,这可以采取多种形式,例如密集层和 softmax 层。

或者,对于多目标预测,可能需要多个单独的密集层来生成不同的输出,例如 reinforcement learning 中的值和策略头。

最后,深度 LSTM 可以用作编码器,它是更大模型的一部分,不一定只包含序列数据。例如,在将组合嵌入通过最终密集层之前,使用使用 LSTM 对文本注释进行编码并使用 CNN 对图像进行编码的模型来诊断患者。

【讨论】:

    猜你喜欢
    • 2018-07-08
    • 2020-09-02
    • 1970-01-01
    • 1970-01-01
    • 2018-02-22
    • 1970-01-01
    • 2019-08-18
    • 1970-01-01
    • 2017-07-31
    相关资源
    最近更新 更多