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

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



