Featured image of post 经典 RNN:循环神经网络

经典 RNN:循环神经网络

介绍循环神经网络的序列状态传递机制与基本计算公式。

定义

循环神经网络(Recurrent Neural Network,RNN)在生成当前时间步的输出时,会参考之前时间步的信息,从而保留序列中的上下文。

例如,在预测时间步 $t$ 的输出 $y_t$ 时,需要输入当前时间步的数据 $x_t$,以及时间步 $t-1$ 的隐藏状态 $h_{t-1}$。

结构

一般的 RNN 都包含隐藏层。隐藏状态会从当前时间步传递到下一时间步:

RNN 结构

算法

隐藏状态的计算公式为:

$$ h_t = f(W_{xh}x_t + W_{hh}h_{t-1} + b_h) $$

输出的计算公式为:

$$ y_t = g(W_{hy}h_t + b_y) $$

其中:

  • $W_{xh}$:输入到隐藏层的可学习权重矩阵
  • $W_{hh}$:上一隐藏状态到当前隐藏状态的可学习权重矩阵
  • $W_{hy}$:隐藏层到输出层的可学习权重矩阵
  • $b_h$、$b_y$:偏置项
  • $f$、$g$:激活函数

**隐藏层维度:**隐藏状态 $h$ 的维度大小是人为设置的超参数。