GIF动画解析RNN,LSTM,GRU

本文涉及的产品
云解析 DNS,旗舰版 1个月
云解析DNS,个人版 1个月
全局流量管理 GTM,标准版 1个月
简介: 本文主要研究了维尼拉循环神经(RNN)、长短期记忆(LSTM)和门控循环单元(GRU)这三个网络,介绍的比较简短,适用于已经了解过这几个网络的读者阅读。
+关注继续查看

循环神经网络是一类常用序列数据的人工神经网络三种最常见的循环神经网络分别是:

1.维尼拉循环神经网络(vanilla RNN)

2.长短期记忆网络(LSTM),由Hochreiter和Schmidhuber于1997年提出

3.门控循环单元网络(GRU),由Cho等人于2014年提出

现在可以查到许多解释循环神经网络这一概念的图示。不过我个人比较推荐的是Michael Nguyen在《迈向数据科学》上发表的这篇文章,因为这篇文章撰写了关于这些模型的很多知识而且提供了清楚易懂的插图易于读者理解这篇文章目的是启发大家思考如何更好地可视化这些单元中发生的情况,节点是如何共享的,以及它们怎么转换为输出节点这些问题。Michael 的精彩动画也给了我很大的启发从中受益匪浅

本文主要研究了维尼拉循环神经(RNN)、长短期记忆(LSTM)和门控循环单元(GRU)这三个网络,介绍的比较简短适用于已经了解过几个网络的读者并且建议在阅读本文之前阅读Michael的文章请读者注意,下面的动画是顺序排列的,读者请依序查看

如下图所示,是我用来做插图的图例

c09b016d834a201eb93799560502a7cf9376e6be

Fig. 0: Legend for animations


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

    演示如下:

Vanilla RNN

3681d8dcfd2817a0f6ffaeac103de42625c55102

Fig. 1: Animated RNN cell


* t — time step 时间步长

* X — input 输入

* h — hidden state 隐藏状态

* length of X — size/dimension of input   X的长度表示输入的大小,尺寸

* length of h — no. of hidden units.  h的长度表示不属于隐蔽的单位


注意,不同的库可以用不同的方式调用它们,但它们的含义都是相同的。

- Keras —state_size ,units

- PyTorch — hidden_size

- TensorFlow — num_units


LSTM

0f0bc67e61055f9ba8e1fa1d28911ddc559feaee

Fig. 2: Animated LSTM cell


* C — cell state

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

GRU

2524af3b04602c67ea0e5c5481581ce2d081858f

Fig. 3: Animated GRU cell


    希望这些动画片对你有所帮助!以下是静态图像中的单元格的概述

a2aa1d422308a2a9f3690de5efe7268fc493eba7

Fig. 4: RNN cell


33284e6069afb20df439cdfe10ab2ba3a2deccd6

Fig. 5: LSTM cell


e7165952dae811d3cee0ab91abedd0139b360a57

Fig. 6: GRU cell


    非常感谢德里克和任杰对本文的想法、建议和纠正。

    如果您想继续了解人工智能和深度学习,可以在Twitter@remykarem上阅读我写的关于这些的摘要文章和演示。


作者信息

Raimi Karim
本文由阿里云云栖社区组织翻译。
文章原标题《Animated RNN, LSTM and GRU Recueernt neural network cells in GIFs]》,译者:么凹,审校:Viola。

文章简译,更为详细的内容,请查看原文

相关文章
|
1月前
|
机器学习/深度学习 TensorFlow 算法框架/工具
tensorflow keras 双向lstm gru的水库水位预测 完整代码+数据 毕业设计
tensorflow keras 双向lstm gru的水库水位预测 完整代码+数据 毕业设计
13 0
|
2月前
|
机器学习/深度学习 算法
基于GRU门控循环网络的时间序列预测matlab仿真,对比LSTM网络
基于GRU门控循环网络的时间序列预测matlab仿真,对比LSTM网络
|
5月前
|
机器学习/深度学习 人工智能 算法
【MATLAB第1期】LSTM/GRU网络回归/分类预测改进与优化合集(含录屏操作,持续更新)
【MATLAB第1期】LSTM/GRU网络回归/分类预测改进与优化合集(含录屏操作,持续更新)
【MATLAB第1期】LSTM/GRU网络回归/分类预测改进与优化合集(含录屏操作,持续更新)
|
5月前
|
机器学习/深度学习 算法 安全
【matlab】LSTM/GRU网络回归/分类预测改进与优化合集(持续更新)
【matlab】LSTM/GRU网络回归/分类预测改进与优化合集(持续更新)
|
前端开发 JavaScript
复刻解析一个流光溢彩炫到掉渣的 CSS 动画按钮
最近在看 next.js 官网是被引流到 conf 页面,发现上面有一个炫酷的按钮,按钮的边框色彩不断变动给人感觉是光在随着按钮旋转一般,感觉挺酷的,复刻一下讲解下原理。
|
存储 网络协议 安全
数据原来是这么传输的(结合动画解析)
从1990年,世界上第一个互联网Web网页诞生,到现在2021年,已经过去了30多个年头。
113 0
数据原来是这么传输的(结合动画解析)
|
算法 搜索推荐 Java
十大经典排序算法动画解析和 Java 代码实现【详细全代码】
排序算法可以分为内部排序和外部排序。内部排序是数据记录在内存中进行排序。而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。 常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。
56 0
十大经典排序算法动画解析和 Java 代码实现【详细全代码】
|
算法 搜索推荐 Java
十大经典排序算法动画与解析,看我就够了!(配代码完全版) | 算法必看系列三十八
排序算法是《数据结构与算法》中最基本的算法之一。排序算法可以分为 内部排序 和 外部排序 。内部排序是数据记录在内存中进行排序。而外部排序是因排序的数据很大,一次不能容纳全部的排序记录,在排序过程中需要访问外存。常见的内部排序算法有:插入排序、希尔排序、选择排序、冒泡排序、归并排序、快速排序、堆排序、基数排序等。
十大经典排序算法动画与解析,看我就够了!(配代码完全版) | 算法必看系列三十八
|
机器学习/深度学习 人工智能 自然语言处理
注意力的动画解析(以机器翻译为例)
近十年以来,直到神经机器翻译系统的诞生之前,统计机器翻译一直在机器翻译领域占据着主要地位。
310 0
热门文章
最新文章
相关产品
机器翻译
推荐文章
更多
推荐镜像
更多