本周为第五课的第一周内容与 CV 相对应的这一课所有内容的中心只有一个自然语言处理Natural Language ProcessingNLP。应用在深度学习里它是专门用来进行文本与序列信息建模的模型和技术本质上是在全连接网络与统计语言模型基础上的一次“结构化特化”也是人工智能中最贴近人类思维表达方式的重要研究方向之一。这一整节课同样涉及大量需要反复消化的内容横跨机器学习、概率统计、线性代数以及语言学直觉。语言不像图像那样“直观可见”更多是抽象符号与上下文关系的组合因此理解门槛反而更高。因此我同样会尽量补足必要的背景知识尽可能用比喻和实例降低理解难度。本篇的内容关于双向 RNN 与深层 RNN是对基础 RNN 结构的一些补充。1. 双向 RNNBidirectional RNN#在前面对RNN、GRU 与 LSTM的讨论中我们始终默认了一个前提序列只能沿时间轴单向展开模型在当前时刻只能利用已经出现的历史信息。这种设定在一些简单任务中是合理的但在大量序列理解与标注任务中却隐藏着一个结构性限制当前时刻的语义或状态往往同时依赖于过去和未来的上下文信息。举个课程里的例子于是问题出现了如果未来信息才是判定当前状态的重要依据该怎么办正是在这样的背景下双向 RNNBidirectional Recurrent Neural Networks被提出。早在1997 年Bidirectional Recurrent Neural Networks这篇论文中就指出对于序列标注与整体理解任务仅依赖过去上下文会造成信息利用上的先天不足因此有必要在模型结构层面同时建模正向与反向的时间依赖关系。需要强调的是双向 RNN 并不是一种新的循环单元设计。它并不改变 RNN、LSTM 或 GRU 内部的计算形式而是通过在时间维度上引入前向与后向两条独立的状态传播链路使模型在每一个时间步都能够融合历史与未来的上下文信息。也正因为这种“结构独立于单元”的特性双向 RNN 可以自然地与 LSTM、GRU 结合形成Bi-LSTM、Bi-GRU成为提升上下文建模能力的标准配置。它的实现逻辑并不复杂这里引用一张比较清晰易懂的传播图出处这样你就会发现同一序列被正向蓝色和反向绿色两条 RNN 同时建模每个时间步 都能“看到”正向的历史上下文和反向的未来上下文最终输出 ^⟨⟩ 由两个方向的信息共同决定。ℎ()concat(ℎ()→,ℎ()←)orℎ()→ℎ()←在实践中双向 RNN 更常采用拼接方式保留来自两个时间方向的完整信息而逐元素相加则是一种更紧凑、但表达能力受限的折中选择。最后再打个比方把序列比作一座要建的桥双向 RNN 就像是两队工人从两侧同时施工并不断交流进度确保精准但同时施工队伍翻倍整体成本也随之上升。2. 深层 RNN#深层 RNN 的概念同样不难理解。在最开始引入循环神经网络时我们说明过默认使用单层 RNN来进行演示在每一个时间步 输入 () 经过一次循环计算得到对应的隐藏状态 ()并沿时间轴不断传递。但从模型表达能力的角度来看这种结构存在限制每个时间步内部只进行了一次非线性变换。这意味着无论序列本身有多复杂在“同一时刻”对输入信息的处理深度都是有限的。到这里就和之前的全连接、卷积网络相通了如果我们希望模型在每一个时间步上也具备类似深度前馈网络、卷积网络那样的层级表达能力该怎么办答案自然就是在时间维度之外再引入层级维度。在深层 RNN 中循环结构不再只有一层而是在同一时间步上堆叠多层 RNN 单元。它的传播图是这样的关于深度的逻辑和之前都是相同的深层 RNN 通过在同一时间步上的堆叠让模型可以进行更复杂的非线性变换增强了其表达能力。但同样也会增加计算成本带来梯度问题与过拟合风险这些都是我们的老生常谈了。于此同时和双向 RNN 类似深层结构同样独立于具体的循环单元设计。 而且在工程实践中深度、方向性和门控机制往往是可以同时叠加的例如多层 Bi-LSTM多层 Bi-GRU我们把各个组件组合或创新便形成了深度学习 NLP 中纷繁复杂的诸多模型。最后如果继续沿用前面的比喻双向 RNN像是从桥的两端同时施工。那么深层 RNN更像是 每一个施工点上不只是铺一层路面而是一层层打地基、加结构、再铺表层。这样结构更稳、表达更强但施工流程更复杂成本和训练难度也随之上升。3.总结#概念原理比喻双向 RNNBidirectional RNN在时间维度上引入正向和反向两条独立状态链路每个时间步同时利用过去和未来上下文信息。适用于序列标注与整体理解任务。可以与 RNN/LSTM/GRU 结合形成 Bi-RNN、Bi-LSTM、Bi-GRU。序列比作桥两队工人从两端同时施工并交流进度确保精准但施工队伍翻倍成本增加。深层 RNNDeep RNN在同一时间步上堆叠多层 RNN 单元增加每个时间步内部的非线性表达能力从而增强模型的表示能力。可与门控机制和双向结构叠加形成多层 Bi-LSTM、Bi-GRU 等。每个施工点上不是只铺一层路面而是一层层打地基、加结构、再铺表层结构更稳、表达更强但施工流程复杂成本和训练难度增加。