自然语言处理中的循环神经网络与序列到序列模型
1. RNN的反向传播与梯度问题
在RNN的反向传播阶段,单元状态 ( c_t ) 可以在遗忘门 ( f_t ) 的帮助下缓解梯度消失/爆炸问题。通过链式法则,我们可以计算两个连续步骤的偏导数 ( \frac{\partial c_t}{\partial c_{t - 1}} ),其近似为 ( f_t )。对于非连续步骤,有 ( \frac{\partial c_t}{\partial c_{t - k}} \approx \prod_{j = 1}^{k} f_{t - j + 1} )。如果遗忘门的值接近1,梯度信息可以几乎不变地通过网络状态。不过,由于 ( f_t ) 使用sigmoid激活函数,信息流仍然会受到sigmoid激活函数特有的梯度消失问题影响,但与常规RNN的梯度不同, ( f_t ) 在每个时间步都有不同的值,因此梯度消失效应不太明显。
2. 门控循环单元(GRU)
GRU是2014年提出的一种循环块,作为对LSTM的改进。它通常具有与LSTM相似或更好的性能,但参数和操作更少。GRU单元有一个单一的隐藏状态 ( h_t ),可看作是LSTM隐藏状态和单元状态的组合。GRU单元有两个门:
- 更新门 ( z_t ) :结合了LSTM的输入门和遗忘门,根据网络输入 ( x_t ) 和前一个隐藏状态 ( h_{t - 1} ) 决定丢弃哪些信息以及包含哪些新信息。公式为 ( z_t = \sigma(W_z x_t + U_z h_{t - 1}) )。
- 重置门 ( r_t ) :使用前一个隐藏状态 ( h_{t
超级会员免费看
订阅专栏 解锁全文
1万+

被折叠的 条评论
为什么被折叠?



