循环神经网络(RNN)全面解析与实践
1. 循环神经元与计算图展开
循环神经元与多层感知机(MLP)和卷积神经网络(CNN)的神经元不同,在每个新的时间步,数据会循环回到同一神经元,而不是在网络中从一个神经元向另一个神经元传递分层信息。时间步也可以理解为一个新的序列。循环神经元有两个输入权重 $W_{xt}$ 和 $W_{yt - 1}$,分别对应时间 $t$ 的输入 $x_t$ 和时间 $t - 1$ 的输入 $y_{t - 1}$。
循环神经网络可以形式化为展开的计算图,它展示了序列中每个时间步信息在循环层中的流动。例如,若有一个包含五个时间步的序列,就需要将循环神经元在这五个时间步上展开。序列的数量构成了循环神经网络架构的层数。
2. 基本循环神经网络
当循环网络展开时,能看到信息在不同循环层之间的流动,且数据集的序列长度决定了循环层的数量。比如,一个具有十层的时间序列数据集,在循环网络系统中,每个行序列将对应十层。
循环层并非由单个神经元单元组成,而是一组神经元或神经元单元。在构建网络架构时,循环层中神经元的数量是一个设计决策。
循环层中的每个神经元接收前一层的输出和当前输入作为输入,因此每个神经元有两个权重向量。和其他神经元一样,它们对输入进行仿射变换,并通过非线性激活函数(通常是双曲正切函数 $\tanh$)。在循环层内,神经元的输出会传递到一个具有 softmax 激活函数的全连接层,以输出类别概率。
3. 循环连接方案
从一个循环层到另一个循环层形成循环连接主要有两种方案:
- 隐藏单元之间的循环连接 :能更好
超级会员免费看
订阅专栏 解锁全文
279

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



