[DeeplearningAI笔记]序列模型1.10-1.12LSTM/BRNN/DeepRNN

5.1循环序列模型

觉得有用的话,欢迎一起讨论相互学习~

我的微博我的github我的B站

吴恩达老师课程原地址

1.10长短期记忆网络(Long short term memory)LSTM

Hochreiter S, Schmidhuber J. Long Short-Term Memory[J]. Neural Computation, 1997, 9(8):1735-1780.

门控循环神经网络单元GRU

长短期记忆网络LSTM

  • 记忆细胞更新:

\[\breve{C}^{<t>}=tanh(W_c[a^{<t-1>},x^{<t>}]+b_c) \]

  • 更新门:

\[\gamma_u=\sigma(W_u[a^{<t-1>},x^{<t>}]+b_{u}) \]

  • 遗忘门--遗忘门在GRU中相当于\((1-\gamma_u)\),在LSTM中使用专用的\(\gamma_f\)代替:

\[\gamma_f=\sigma(W_f[a^{<t-1>},x^{<t>}]+b_{f}) \]

  • 输出门:

\[\gamma_o=\sigma(W_o[a^{<t-1>},x^{<t>}]+b_{o}) \]

  • 记忆细胞:

\[c^{<t>}=\gamma_u * \breve{c}^{<t>} + \gamma_f * c^{<t-1>} \]

  • \[a^{<t>}=\gamma_o * tanh(c^{<t>}) \]



1.11双向神经网络Bidirectional RNN

  • 这个模型可以让你在序列的某处不仅可以获取之前的信息,还可以获取未来的信息
  • 在这个句子中,根据原始的模型,并不能区别泰迪熊和美国前总统泰迪的区别。必须要使用到Teddy词后的信息才能识别出Teddy的意义。无论这些单元是标准的RNN块还是GRU单元或者是LSTM单元,前向的结构都不能够识别出Teddy的意义。
  • 双向神经网络结构如下图所示:

    这样的网络构成了一个无环图,其中信息的流向,如下动图中显示:

1.12深层循环神经网络Deepl RNNs

  • 通过计算\(a^{[2]<3>}\)的值来了解RNN的计算过程,\(a^{[2]<3>}\)有两个输入,一个是从下面传上来的\(a^{[1]<3>}\),一个是从左边传进来的输入\(a^{[2]<2>}\)

\[a^{[2]<3>}=g(W_a^{[2]}[a^{[2]<2>},a^{[1]<3>}]+b_a^{[2]}) \]

  • 对于普通的神经网络,也许可以经常看见100层神经网络,但是对于RNN来说,有三层就已经有很多参数了,因为有时间的维度,RNN会变得相当大,一般很少会看见RNN堆叠到很深的层次。
  • 但是深层次的预测却经常见到,即第三层的输出会连接上更深的层,但是水平方向上却不相连
posted @ 2018-08-27 20:17  WUST许志伟  阅读(508)  评论(0编辑  收藏  举报