LSTM和GRU结构及原理介绍

参考博文: 直觉理解LSTM和GRU

第一部分: LSTM

LSTM的结构

在这里插入图片描述

LSTM的原理

LSTM单元之间传递两个信息, c和h
在这里插入图片描述
C t − 1 C_{t-1} Ct1 C t C_t Ct, 先遗忘一部分信息, 然后再加上新学到的一部分信息
在这里插入图片描述
在这里插入图片描述
f t f_t ft控制哪些需要忘掉, C ~ t \tilde{C}_t C~t用于生成新信息, i t i_t it控制哪些新信息需要保留, C t C_t Ct就完成了

但是 h t h_t ht还没有完成, h t h_t ht还需要经过如下处理用于输出:
在这里插入图片描述
o t o_t ot控制了新信息中哪些用于此单元输出

LSTM的优势

  • 相比RNN, LSTM最大的优势就是可以缓解梯度消失问题. (RNN在反向传播的时候求底层的参数梯度会涉及到梯度连乘, 出现梯度消失或者梯度爆炸)
  • 数学原理, 参考知乎: 为什么相比于RNN,LSTM在梯度消失上表现更好?-- 刘通的回答)
    在这里插入图片描述
    对于RNN, 如果要计算 h 0 h_0 h0的导数, 涉及同一个W的连乘(正向传播的时候是矩阵乘法), 这很容易引起梯度消失或者梯度爆炸.(W>1 或 W<1)
    在这里插入图片描述
    而对于LSTM, 反向传播的时候 c 0 c_0 c0的导数只涉及 f t f_t ft的连乘(对应元素相乘), 并且每个cell的 f t f_t ft不相同(在0-1之间), 这更不容易引起梯度消失.
  • 此外, LSTM通过引入更多的参数, 可以更加精细地预测时间序列变量.

第二部分: GRU

GRU的结构

在这里插入图片描述
在GRU里面,不再有C和h两部分,而是只用了h

GRU的原理

与LSTM类似, GRU的学习也是先遗忘一部分旧信息, 再添加一部分新信息.
而不同之处在于, 在LSTM中,忘记和添加的比例是学习来的,两者没什么相关;而在GRU中,这个比例是固定的:忘记了多少比例,那么新的信息就添加多少比例。这个由 (1-)来进行控制
在这里插入图片描述
z t z_t zt同时控制遗忘旧信息和记住新信息的比例
在这里插入图片描述
新信息是由 x t x_t xt和一部分 h t h_t ht生成的, 这"一部分"由 r t r_t rt控制

GRU的优势

相比LSTM,使用GRU能够达到相当的效果,并且相比之下更容易进行训练,能够很大程度上提高训练效率,因此很多时候会更倾向于使用GRU, 尤其是训练较深的网络时.

  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值