LSTM与GRU

长短时间记忆网络

RNN的反馈特性使得它能记住短时间的信息,但不能记忆较远时间的信息,LSTM可以
LSTM分为记忆门,遗忘门,输出门,
在这里插入图片描述
如图所示:
遗忘门:
f t = σ ( W f [ h t − 1 , x t ] + b f ) f_{t}=\sigma(W_{f}[h_{t-1},x_{t}]+b_{f}) ft=σ(Wf[ht1xt]+bf)
记忆门:
i t = σ ( W i [ h t − 1 , x t ] + b i ) i_{t}=\sigma(W_{i}[h_{t-1},x_{t}]+b_{i}) it=σ(Wi[ht1xt]+bi)
C t ∼ = tanh ⁡ ( W c [ h t − 1 , x t ] + b c ) C^{\sim}_{t}=\tanh(W_{c}[h_{t-1},x_{t}]+b_{c}) Ct=tanh(Wc[ht1xt]+bc)
更新细胞状态:
C t = f t ∗ C t − 1 + i t ∗ C t ∼ C_{t}=f_{t}*C_{t-1}+ i_{t}*C^{\sim}_{t} Ct=ftCt1+itCt
输出门:
O t = σ ( W o [ h t − 1 , x t ] + b o ) O_{t}=\sigma(W_{o}[h_{t-1},x_{t}]+b_{o}) Ot=σ(Wo[ht1xt]+bo)
h t = o t ∗ tanh ⁡ ( C t ) h_{t}=o_{t}*\tanh(C_{t}) ht=ottanh(Ct)

为什么分别使用sigma与tanh?

sigmoid函数用于门的开关控制,tanh函数用于生成候选值

在门上增加窥视孔

在这里插入图片描述

这是2000年Gers和Schemidhuber教授提出的一种LSTM变体。图中,在传统的LSTM结构基础上,每个门(遗忘门、记忆门和输出门)增加了一个“窥视孔”(Peephole),有的学者在使用时也选择只对部分门加入窥视孔。

整合遗忘门和输入门

在这里插入图片描述

与传统的LSTM不同的是,这个变体不需要分开来确定要被遗忘和记住的信息,采用一个结构搞定。在遗忘门的输出信号值(0到1之间)上,用1减去该数值来作为记忆门的状态选择,表示只更新需要被遗忘的那些信息的状态。

GRU

改进比较大的一个LSTM变体叫Gated Recurrent Unit (GRU),目前应用较多。结构图如下
在这里插入图片描述

GRU主要包含2个门:重置门和更新门。GRU混合了细胞状态和隐藏状态为一个新的状态,使用 h t h_{t} ht来表示。该模型比传统的标准LSTM模型简单。
重置门:

r t = σ ( W r [ h t − 1 , x t ] ) r_{t}=\sigma(W_{r}[h_{t-1},x_{t}]) rt=σ(Wr[ht1xt])
h t ∼ = tanh ⁡ ( W h [ r t − 1 ∗ h t − 1 , x t ] ) h^{\sim}_{t}=\tanh(W_{h}[r_{t-1}*h_{t-1},x_{t}]) ht=tanh(Wh[rt1ht1xt])

更新门:

z t = σ ( W z [ h t − 1 , x t ] ) z_{t}=\sigma(W_{z}[h_{t-1},x_{t}]) zt=σ(Wz[ht1xt])
h t = ( 1 − z t ) ∗ h t − 1 + z t ∗ h t ∼ h_{t}=(1-z_{t})*h_{t-1}+z_{t}*h^{\sim}_{t} ht=(1zt)ht1+ztht

  • 7
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值