6.3 Vanilla RNN 的结构与训练 — 基本循环神经网络的前向计算与 BPTT

本文讲解一种最基础的循环神经网络,也就是通常所说的 Vanilla RNN、Elman RNN 或 Simple RNN 的结构与训练过程。这里不只停留在 RNN 的一般概念,而是进一步说明 隐藏状态 如何计算,输出与损失如何产生,以及模型如何通过 Backpropagation Through Time (BPTT) 进行训练。

04/27/2026

Backpropagation Through Time (BPTT) — 通过沿时间轴展开来训练循环神经网络的反向传播方法

Backpropagation Through Time (BPTT)是一种用于训练循环神经网络的方法:先将网络沿时间轴展开,再把最终误差逐步反向传回更早的时间步,并据此学习一组共享参数。它是 RNN 学习序列上下文与时间依赖关系的核心训练过程。

04/02/2026

Unrolled Computational Graph — 将循环计算沿时间轴展开的计算图

Unrolled Computational Graph 是一种将循环结构模型的计算沿时间轴展开,并表示为无环形式的计算图。采用这种表示之后,每个时间步的状态转移、输出生成以及梯度传播路径都会变得更加清晰,因此可以更系统地分析序列模型的计算过程与训练机制。

04/04/2026

展开图(时间展开,Unrolling in Time)——一种沿时间轴展开循环结构、用于解释计算路径与学习路径的表示方式

展开图(时间展开,Unrolling in Time)是指将循环神经网络(RNN)的循环结构沿着时间轴展开,从而把每个时刻的计算过程、状态传递和学习路径清楚地表示出来的一种方式。RNN 原本是一个会回到自身的闭环结构,因此计算流程和梯度传播路径都不容易直观追踪。把它按时间顺序展开之后,循环模型就可以像普通计算图那样被理解,从而更容易分析它的训练过程。

04/03/2026

序列损失 — 按时间步汇总误差进行训练的核心准则

序列损失(Sequence Loss)是一种面向序列数据的训练目标:先在每个时间步计算预测误差,再沿时间轴把这些误差汇总成一个整体学习信号。也就是说,模型不是因为只在某一个位置预测正确就更新,而是根据它对整条序列的整体预测质量来更新参数。

04/04/2026

循环图——将时间依赖表示为计算图的结构

Recurrent Graph(循环图)是一种用计算图来表示循环依赖结构的方式,其中前一时刻的计算结果会再次作为当前时刻计算的输入。在序列数据中,各个时间步并不是彼此独立的,因此需要一种结构,把过去的信息带入当前状态。Recurrent Graph提供的正是在计算图层面表达时间依赖的基础框架,而不仅仅是在模型名称层面描述这种关系。

04/02/2026