GRU:什么是GRU?为什么要学习GRU?

什么是GRU?为什么要学习GRU?

GRU也是也可处理序列数据的一种模型,是循环神经网络的一种,同时呢它也是LSTM的一种变体,然后为什么要学习它,是因为我们了解了LSTM后发现他有很多可以精简改进的地方,例如说它复杂的模型结构,因此GRU就诞生了。相比较LSTM内部结构进行了简化,同时准确率也得到了提升。

为什么说GPU比LSTM更加的精简?

首先我们知道LSTM总共有三个门,遗忘门,输入门,输出门,而我们的GRU中呢使用的是两个门,重置门和更新门。

结构如图:

GRU和LSTM的区别:

  1. LSTM有三个门,而GRU有两个门
  2. 去掉了细胞单元C
  3. 输出的时候取消了二阶的非线性函数

两个门的理解:

重置门:

作用对象是前边的隐藏状态

作用呢就是决定了有多少过去信息需要遗忘

更新门:(可以理解为LSTM中的遗忘门和输入门相结合)
作用对象是当前时刻和上一时刻的隐藏单元

作用就是上一时刻,以及当前时刻总共有多少有用的信息需要接着向下传递

前向传播:

重点:我们来理解一下sigmoid和(1-sigmoid)
大家想一下我们更新门的作用和意义是什么,是不是就是为了将上一时刻和当前时刻总共有多少有用的信息需要接着往下传递呀,我们更新门的输入数据是什么是不是就是ht-1和xt,那么我们假设上一时刻有用的信息是0.2,那么我本时刻传递的时候是不是就传递1-0.2=0.8的有用信息啦,一般情况下极端值比较好理解,我们假设说上一时刻传递的信息都没有用,那么也就是说我的上一时刻的信息是不是不需要继续往下传递了呀,所以他的sigmoid输出是不是就成了0啦,然后我当前时刻有用的信息是不是要接着往下传啦,传递多少呢,1-0=1,是不是代表的意思就是说,我上一时刻的所有信息都没有用,全部抛弃啦,然后我是不是就相当于在当前时刻又重新开始记忆啦,那么我当前时刻就是我要重新记忆的开始,所以我要全记住接着往下传递,就好像我在第一时刻和第二时刻一样,我第二时刻传递进来的上一时刻的信息不就是第一时刻所有的信息吗。
 

引入一个图片介绍:

LSTM和GRU的对比:

都通过了门去保留重要的特征

准确率不相上下

但是GRU更快因为它拥有更少的参数,少了一个门就少了很多的矩阵的乘法,在数据上训练的时候GRU就能节省下来很多的时间。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值