趋近智
循环神经网络 (neural network) (RNN)逐步处理序列信息,同时保持内部记忆。实现此功能的基本构件是简单RNN单元。
可将RNN单元视为在序列中每个时间步运行的计算引擎。对于输入序列中的每个元素 (在时间步 ),该单元接收两个输入:
利用这些输入,该单元执行计算以生成两个输出:
简单RNN单元内的核心计算包含结合当前输入和先前隐藏状态,使用学习到的权重 (weight)和激活函数 (activation function)。本章引言展示了基本方程:
我们来逐一分析:
tanh),它将值压缩到 [-1, 1] 的范围。这有助于调节信息流并减轻一些梯度问题(尽管不能完全解决,正如我们稍后将了解的)。softmax,回归使用线性函数)。此架构的一个重要特点是权重共享。相同的权重矩阵 (, , ) 和偏置 (, ) 在每个时间步都使用。这意味着网络学习一套参数 (parameter)来明确如何处理输入元素并更新其记忆,无论该元素在序列中的位置如何。这使得RNN在参数上具有高效性,并且能够泛化处理不同长度的序列。
我们可以可视化单个RNN单元及其连接:
单个RNN单元处理输入 和先前状态 ,以计算得到新状态 和输出 。权重 (weight)矩阵 (, , ) 在这些转换过程中应用。
真正的作用体现在将这些单元链接起来,形成循环连接。在时间步 计算得到的隐藏状态 成为时间步 单元的输入 。这种时间上的“展开”使得信息能够流经序列:
一个RNN在三个时间步上展开。每个时间步由单元计算得到的隐藏状态 () 作为输入传递给下一时间步 () 的单元。每个时间步都使用相同的单元参数 (parameter)(权重 和偏置 (bias) )。
这种展开视图很有帮助,尤其是在思考梯度在训练期间如何反向流动(时间反向传播 (backpropagation))时,我们将在接下来讨论这个。然而,请记住,在实际应用中,是相同的单元结构(具有相同的权重)被重复应用,而不是每个时间步都有不同的副本。这种结构使得RNN能够使用固定数量的参数处理任意长度的序列。
这部分内容有帮助吗?
© 2026 ApX Machine LearningAI伦理与透明度•