2.2.4 GRU
GRU是另一种主流的RNN衍生物。RNN和LSTM 都是在设计网络结构用于缓解梯度消失问题,只不过网络结构有所不同。GRU在数学上的形式化表示如下:

(2.31)
为了理解 GRU的设计思想,我们再一次运用“三次简化一张图”的方法来进行分析:
(1)第1次简化:忽略门控单元的来源。
(2)考虑一维门控单元。经过这两次简化,GRU的数学形式是以下两行

(2.32)
(3)第3次简化:各门控单元二值输出。这里和LSTM 略有不同的地方在于,当时,
;当
时,
。因此,
扮演的角色是一个个单刀双掷开关。
(4)一张图。将3次简化的结果用图表述出来,左边是输入,右边是输出,如图2-29所示。

图2-29 GRU 运行原理图
与 LSTM 相比,GRU 将输入门和遗忘门
融合成单一的更新门
,并且融合了细胞状态
和隐层单元
。当
(重置门开关闭合)、
(更新门开关连通上面)时,GRU 退化为标准的RNN。
根据图2-29,我们可以对 GRU各单元的作用进行分析。
● 重置门:
用于控制前一时刻隐层单元
对当前词
的影响。如果
对
不重要,即从当前词
开始表述了新的意思,与上文无关。那么开关
可以打开,使得
对
不产生影响。
● 更新门:
用于决定是否忽略当前词
。类似于LSTM 中的输入门
,
可以判断当前词
对整体意思的表达是否重要。当
开关接通下面的支路时,我们将忽略当前词
,同时构成了从
到
的短路连接,这使梯度得已有效地反向传播。和LSTM 相同,这种短路机制有效地缓解了梯度消失现象,这个机制与高速公路网络(Highway Networks)(Srivastava et al.,2015a)十分相似。