RNN、LSTM、GRU详解
在深度学习领域,序列数据(如语音识别、机器翻译、文本生成等)广泛应用于自然语言处理(NLP)、时间序列预测、语音和视频处理等任务中。针对序列数据,循环神经网络(RNN, Recurrent Neural Network)及其改进版本——长短时记忆网络(LSTM, Long Short-Term Memory)和门控循环单元(GRU, Gated Recurrent Unit)成为处理时序任务的核心模型。
🧠 一、RNN:循环神经网络
1.1 RNN 原理
RNN 是一种具有记忆能力的神经网络,能够处理序列数据(如文本、音频、时间序列信号)。其核心思想是通过循环结构,将前一个时刻的信息传递到当前时刻,形成一种“记忆”。
📊 RNN 结构图
输入序列 (x₁, x₂, ..., xₜ) → RNN 单元 → 输出序列 (y₁, y₂, ..., yₜ)
每个时间步的计算公式如下:
ht=tanh(Wxh⋅xt+Whh⋅ht−1+bh)h_t = \tanh(W_{xh} \cdot x_t + W_{hh} \cdot h_{t-1} + b_h) yt=Why⋅ht+byy_t = W_{hy} \cdot h_t + b_y
其中:
- hth_t 表示时间步 tt 的隐藏状态(记忆)<