56 门控循环单元(GRU)【动手学深度学习v2】
深度学习学习笔记
学习视频:https://www.bilibili.com/video/BV1mf4y157N2/?spm_id_from=autoNext&vd_source=75dce036dc8244310435eaf03de4e330
门控循环单元GRU
GRU和LSTM 实际上效果差不多。
做RNN处理不了太长序列,因为信息都在隐藏状态中,如果序列太长隐藏状态就累计太多东西,对前面的信息就不太好抽取信息。
序列中每个观察值都不是同等重要,实际句子中也就是关键字和关键句比较重要。门控神经网络,通过一些门控单元,去选择一些比较重要的关注的地方。
有两种门,更新门:这个数据比较重要,尽量的放到隐藏层里面;重置门:不太重要的部分,可以忘记掉。
**
门:**一个层,σ(sigmoid将值变为0-1之间)
Rt和Zt两个门。
Ht-1 、Xt 并在一起,进入一个全连接成,然后得到输出。
**候选隐状态:**使用tanh作为激活函数。 【圈】按元素乘法的意思。Rt是一个0-1的值,Rt靠近0的话,变向0,就是将上一个隐藏层的信息全忘掉。Rt=0的话,从0初始化开始;Rt=1,上一层隐藏层信息全要。所以Rt 是一个控制单元,控制上一层的信息给到下一层信息。
隐状态: 真正的隐状态,Zt按元素点乘Ht-1(上一层的隐藏层状态),加上(1-Zt)点乘候选隐藏层状态。
可学习权重是之前RNN的2-3倍。
两个门是控制单元,重置门用来控制新隐藏状态要用到多少过去隐藏状态的信息;更新门新的隐藏状态要用到当前新的隐藏信息多少。因为它们的值都是在0-1区间。