专栏首页AI研习社从动图中理解 RNN,LSTM 和 GRU

从动图中理解 RNN,LSTM 和 GRU

原标题 | Animated RNN, LSTM and GRU 作者 | Raimi Karim 译者 | 汪鹏(重庆邮电大学)、Overfitting 注:本文的相关链接请访问文末【阅读原文】

递归神经网络(RNNs)是一类常用的序列数据人工神经网络。三种最常见的递归神经网络类型分别是:

  1. vanilla RNN
  2. 长短记忆RNN(LSTM),由 Hochreiter和 Schmidhuber 在1997年提出
  3. 门控循环单元(GRU),由Cho等人在2014年提出賽普·霍克賴特

要指出的一点是,我将使用"RNNS"来统称本质上是递归神经网络结构,"vanilla RNN"来指代在图一所展示的最简单的循环神经网络结构.

有很多关于递归神经网络的图解.

我个人最喜欢的一个是Michael Nguyen发表在《走向数据科学》(Towards Data Science)的这篇文章,因为他不仅给我们提供了对这些模型的直觉,更重要的是这些漂亮的插图,使我们更容易理解。但我发表这篇文章的动机是为了更好地理解这些单元中发生了什么,节点是如何共享的,以及它们是如何转换为输出节点。这里,我也受到了Michael的动画启发。

本文研究了vanilla RNN、LSTM和GRU单元。这是一个简短的概述,是为那些读过关于这些主题的文章的人准备的。(我建议在阅读本文之前先阅读Michael的文章),需要注意的是,以下动画是按顺序引导的,但在向量化的机器计算过程中并不反映时间上的顺序。

下面是我用来做说明的图例:

图0:动画图例

在我的动画中,我使用了大小为3(绿色)的输入和2个隐藏单元(红色),批量大小为1。

让我们开始吧!

Vanilla RNN

图1:vanilla RNN 示意动画

  • t—时间步长
  • X—输入
  • h—隐藏状态
  • X的长度—输入的大小
  • h的长度—隐藏单元。 请注意不同的库以不同的方式调用它们,但它们的含义相同: - Keras — state_size ,units - PyTorch — hidden_size - TensorFlow — num_units

LSTM(长短期记忆网络)

图2:LSTM 示意动画

  • C - 单元状态

注意,单元状态的维度与隐藏状态的维度相同。

GRU

图3:GRU 示意动画

希望这些动画能以某种方式帮助你!以下是静态图像中的概况:

图4:Vanilla RNN 单元

图5:LSTM 单元

图6:GRU 单元

一个提醒:我使用Google绘图来创建的这些示意图。

参考资料

  • 了解LSTM Networks - colah 的博客。 https://colah.github.io/posts/2015-08-Understanding-LSTMs/
  • LSTM和GRU的插图指南:逐步解释 https://towardsdatascience.com/illustrated-guide-to-lstms-and-gru-s-a-step-by-step-explanation-44e9eb85bf21

本文编辑:王立鱼

英文原文:

https://towardsdatascience.com/animated-rnn-lstm-and-gru-ef124d06cf45

想要继续查看该篇文章相关链接和参考文献?

点击底部【阅读原文】即可访问:

https://ai.yanxishe.com/page/TextTranslation/1601

本文分享自微信公众号 - AI研习社(okweiwu),作者:雷锋字幕组

原文出处及转载信息见文内详细说明,如有侵权,请联系 yunjia_community@tencent.com 删除。

原始发表时间:2019-07-11

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 深度学习时序分析概览

    原标题 | Time Series Analysis with Deep Learning : Simplified

    AI研习社
  • PyTorch  深度学习新手入门指南

    翻 译 | 天字一号(郑州大学)、Ryan(西安理工大学)、申影(山东大学)、邺调(江苏科技大学)、Loing(华中科技大学)

    AI研习社
  • 恺明大神 Mask R-CNN 超实用教程

    翻 译 | 天字一号(郑州大学)、李美丽(华南师范大学)、had_in(电子科技大学)、nengdaiper(北京科技大学)

    AI研习社
  • 一份详细的LSTM和GRU图解

    在这篇文章中,我们将从LSTM和GRU背后的直觉开始。然后我(Michael)将解释使LSTM和GRU表现良好的内部机制。如果你想了解这两个网络背后的机制,那么...

    AiTechYun
  • 超生动图解LSTM和GPU:拯救循环神经网络的记忆障碍就靠它们了!

    AI识别你的语音、回答你的问题、帮你翻译外语,都离不开一种特殊的循环神经网络(RNN):长短期记忆网络(Long short-term memory,LSTM)...

    量子位
  • 在调用API之前,你需要理解的LSTM工作原理

    机器之心
  • 机器学习人工学weekly-2018/1/14

    注意下面很多链接需要科学上网,无奈国情如此 1. 大炮Gary Marcus(NYU教授,前Uber AI lab的director)发长文讨论深度学习的各种...

    windmaple
  • 完美实现SpringBoot+Angular普通登录

    本文基于《SpringBoot+Angular入门实例教程》第5.1节的内容理解并简化而来。本文的目的浅析前后台分离的普通登录数据流。

    好好学java
  • 研究人员开发AI预测能够中断核聚变和破坏设备的威胁

    为了捕捉和控制地球上被称为托卡马克的设施中的太阳和恒星的核聚变过程,科学家们必须能够阻止那些会中断反应并破坏环形设备的威胁。现在美国能源部(DOE)普林斯顿等离...

    AiTechYun
  • 论文赏析[AAAI18]面向序列建模的元多任务学习

    面向序列建模的元多任务学习 - WeiYang Bloggodweiyang.com

    godweiyang

扫码关注云+社区

领取腾讯云代金券