目录
简介
GRU是一种在循环神经网络中使用的单元结构。它旨在解决传统RNN在网络处理长序列数据时遇到的梯度消失或梯度爆炸问题。
GRU通过引入门控机制来控制信息的流动,从而使得网络能够更好地学习长期依赖性。
门

门可以视为一个与隐状态相同长度的向量,分为重置门和更新门。 重置门允许我们控制"可能还想记住"的过去状态的数量; 更新门将允许我们控制新状态中有多少个是旧状态的副本。更新门是一个sigmoid激活函数输出的结果,其值范围在0到1之间。当更新门完全打开(接近1)时,意味着旧状态将完全保留;当它关闭(接近0)时,则意味着旧状态将被丢弃,新的候选状态将完全取代旧状态。
重置门计算公式为:。
更新门计算公式为:。
候选隐藏状态

候选隐状态(candidate hidden state)是指在某一时间步t计算出的一个潜在的新隐状态值,通常用表示。
候选隐状态计算公式为:。
符号⊙是Hadamard积(按元素乘积)运算符。 在这里,我们使用tanh非线性激活函数来确保候选隐状态中的值保持在区间(−1,1)中。其中,重置门的作用是确定上一时刻的状态
中有多少信息需要传递到当前时刻的候选隐状态中。如果重置门关闭(即
接近于0),则上一时刻的信息对当前候选隐状态的影响很小;如果重置门开启(即
接近于1),则上一时刻的信息将完全参与当前候选隐状态的计算。
隐状态

结合更新们,可以确定新的隐状态。
决定了新的隐状态多大程度来自旧的隐状态
和新的候选状态
。每当更新门
接近1时,模型就倾向只保留旧状态。 此时,来自
的信息基本上被忽略, 从而有效地跳过了依赖链条中的时间步t。 相反,当
接近0时, 新的隐状态
就会接近候选隐状态
。
隐状态公式为: