CS224d lecture08 GRU和LSTM

GRU

GRU中含有更新门和重置门(计算中得到的最后形式是向量,通过将输入或隐状态相乘,重置门决定了如何把新的输入与之前的记忆相结合,更新门决定多少先前的记忆起作用。),重置门和更新门能够起到解决梯度消失问题的作用。

更新门:
z t = σ ( W ( z ) x t + U ( z ) h t − 1 ) z_t=\sigma(W^{(z)}x_t+U^{(z)}h_{t-1}) zt=σ(W(z)xt+U(z)ht1)

重置门:
r t = σ ( W ( r ) x t + U ( r ) h t − 1 r_t=\sigma(W^{(r)}x_t+U^{(r)}h_{t-1} rt=σ(W(r)xt+U(r)ht1

在这里插入图片描述

LSTM(Long Short-term Memory/长短期记忆)

原理:

门:输入门、遗忘门、输出门
在这里插入图片描述
δ \delta δ S i g m o i d Sigmoid Sigmoid函数,值域为【0,1】,用于决定遗忘多少信息,0:全部遗忘,1:全部记住。
h t h_t ht:细胞的输出
x t x_t xt:当前输入
C t C_t Ct:细胞状态
W W W:学习到的权值矩阵

第一步:决定从细胞状态忘记什么信息:
f t = δ ( W f [ h t − 1 , x t ] + b f ) f_t=\delta(W_f[h_{t-1},x_t]+b_f) ft=δ(Wf[ht1,xt]+bf)
第二步:决定让多少新的信息加入细胞状态中:
i t = δ ( W i [ h t − 1 , x t ] + b i ) i_t=\delta(W_i[h_{t-1},x_t]+b_i) it=δ(Wi[ht1,xt]+bi)
t a n h tanh tanh用来生成一个向量,即备选的用来更新的内容:
C t ~ = t a n h ( W c [ h t − 1 , x t ] + b C ) \widetilde{C_t}=tanh(W_c[h_{t-1},x_t]+b_C) Ct =tanh(Wc[ht1,xt]+bC)
第三步:更新细胞状态
C t = f t ∗ C t − 1 + i t ∗ C t ~ C_t=f_t*C_{t-1}+i_t*\widetilde{C_t} Ct=ftCt1+itCt
第四步:确定输出(过滤后版本)
o t = δ ( W o [ h t − 1 , x t ] + b o ) o_t=\delta(W_o[h_{t-1},x_t]+b_o) ot=δ(Wo[ht1,xt]+bo)
h t = o t ∗ t a n h ( C t ) h_t=o_t*tanh(C_t) ht=ottanh(Ct)

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值