RNN的核心机制
RNN通过隐藏状态记忆历史信息:h_t = σ(W_h h_{t-1} + W_x x_t + b)。隐藏状态传递序列上下文。
时序展开视角:RNN可视为深度网络,每时间步一层,权重在时间维度共享。
RNN的挑战
梯度问题
- 梯度消失:长序列导致梯度衰减,难以学习长程依赖
- 梯度爆炸:梯度过度增长,训练不稳定
LSTM与GRU
LSTM引入门控机制解决梯度消失:输入门、遗忘门、输出门控制信息流。细胞状态提供长期记忆通道。
GRU简化LSTM:合并输入门和遗忘门,减少参数,计算更高效。
选择建议
短序列可用基本RNN;中等序列用GRU;长序列和复杂依赖用LSTM;超长序列考虑Transformer。
双向RNN
双向RNN同时处理正向和反向序列,捕获完整上下文信息。适用于需要全局理解的序列任务。
RNN赋予神经网络记忆能力,让机器理解序列的时序之美。