1、RNN基本机构
RNN 的前向传播公式
一般
h(0)
会初始化为 0 向量;并使用tanh
作为激活函数f
2、RNN常见的几种设计模式
RNN 一般包括以下几种设计模式
扫描二维码关注公众号,回复:
5119400 查看本文章
-
每个时间步都有输出,且隐藏单元之间有循环连接
- 即通常所说 RNN
- 这种结构会在每个时间步产生一个输出,所以通常用于“Seq2Seq”任务中,比如序列标注、机器翻译等。这些任务通常都比较复杂。
-
每个时间步都有输出,但是隐藏单元之间没有循环连接,只有当前时刻的输出到下个时刻的隐藏单元之间有循环连接
- 这种模型的表示能力弱于第一种,但是它更容易训练
- 因为每个时间步可以与其他时间步单独训练,从而实现并行化
- 具体来说,就是使用
y(t)
代替o(t)
输入下一个时间步。
-
隐藏单元之间有循环连接,但只有最后一个时间步有输出
- 忽略模式 1 中的中间输出,即可得到这种网络;
- 这种网络一般用于概括序列。具体来说,就是产生固定大小的表示,用于下一步处理;
- 在一些“Seq2One”中简单任务中,这种网络用的比较多;因为这些任务只需要关注序列的全局特征。
其中前两种 RNN 分别被称为 Elman network 和 Jordan network;通常所说的 RNN 指的是前者
Recurrent neural network - Wikipedia