时间序列网络RNN,LSTM入门

RNN

解决问题示例:语句情感分析
在这里插入图片描述
传统方法问题:

  1. 长句子,参数过多 (改进:使用参数共享,每个单词的特征提取方式一致)
  2. 没有上下句的语境信息 (改进:需要长期的记忆模块)

改进的模型: h 0 h_0 h0为初始化数据
在这里插入图片描述
共享的参数: w h h w_{hh} whh w w h w_{wh} wwh
最后输出可以是最后的节点,也可以将所有的记忆节点综合输出,比较灵活。

最后的实际模型为:
在这里插入图片描述
其中:
激活函数使用 t a n h ( ) tanh() tanh()函数
输出 y t y_t yt也可以将所有的 h t h_t ht t = 1... t t=1...t t=1...t以全连接层综合起来输出。
训练
BP though time
梯度求导公式:注意:梯度公式有累积项,所以会出现梯度爆炸的情况
在这里插入图片描述
Pytorch调用RNN
输入: x : [ s e q l e n , b a t c h , f e a t u r e l e n ] x:[seq len,batch,feature len] x:[seqlen,batch,featurelen],一次送一个单词 x t : [ b a t c h , f e a t u r e l e n ] x_t:[batch,feature len] xt:[batch,featurelen]
模型中反复的计算步骤: x t ∗ w w h + h t ∗ w h h x_t*w_{wh}+h_t*w_{hh} xtwwh+htwhh 其中, x t 是 输 入 特 征 x_t是输入特征 xt, h t h_t ht是上一时刻的记忆内容
输入大小: [ b a t c h , f e a t u r e l e n ] [batch,feature len] [batch,featurelen],输出大小: [ b a t c h , h i d d e n l e n ] [batch,hidden len] [batch,hiddenlen]
在这里插入图片描述
梯度弥散和梯度爆炸
根据梯度的形式里面存在 w k w^k wk的形式,可以得到, w w w如果大于1,梯度爆炸,小于1,梯度弥散。梯度爆炸解决方法:对每一个梯度信息,进行clip(剪辑);梯度弥散解决方法:LSTM

LSTM

在这里插入图片描述
输入门: 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[ht1,xt]+

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值