神经网络与深度学习第四周学习笔记(3/4)
2026/6/1 5:14:56 网站建设 项目流程

摘要:本周课程我们深入探讨了彻底改变自然语言处理(NLP)并全面重塑计算机视觉(CV)的革命性架构——Transformer模型。完整剖析了 Transformer 从输入端到编码器、解码器、输出端以及网络训练的全套闭环机制。以下是本周课堂内容的详细知识梳理与核心要点总结。


一、 Transformer 概述

1.1 诞生背景与传统模型的痛点

传统序列模型(如 RNN、LSTM)在处理序列数据时存在本质缺陷:

  • 串行计算限制:必须按时间步(Token by Token)依次前向传播,无法有效利用 GPU 的强并行计算能力。
  • 长距离依赖丢失:尽管 LSTM 引入了门控机制,但在面对极长文本时,依然容易出现梯度消失或信息遗忘。
1.2 Transformer 的核心优势

2017年《Attention Is All You Need》论文提出了完全摒弃循环结构的 Transformer 架构:

  • 极致的并行化:通过自注意力机制(Self-Attention),序列中的所有 Token 能够同时进行计算,极大地释放了 GPU 的训练算力。
  • 全局感受野:任意两个 Token 之间的距离都是111,天然具备完美捕捉长距离上下文依赖的能力。

二、 输入部分:词嵌入与位置编码

2.1 词嵌入(Token Embedding)
  • 输入的离散文本符号首先通过 Embedding 层,映射为高维稠密连续向量空间。
  • 设词表大小为vvv,嵌入维度为ddd,通常满足d≪vd \ll vdv,用低维稠密向量表达丰富的语义特征。
2.2 位置编码(Positional Encoding)

核心痛点:由于自注意力机制在计算时是“无序”的(对调输入顺序,输出结果相同),网络丢失了文本至关重要的时序信息。

  • 解决方案:引入绝对/相对位置编码。正弦和余弦函数交织的正余弦绝对位置编码机制。
  • 数学公式
    PE(pos,2i)=sin⁡(pos100002id)PE(pos, 2i) = \sin\left(\frac{pos}{10000^{\frac{2i}{d}}}\right)PE(pos,2i)=sin(10000d2ipos)
    PE(pos,2i+1)=cos⁡(pos100002id)PE(pos, 2i+1) = \cos\left(\frac{pos}{10000^{\frac{2i}{d}}}\right)PE(pos,2i+1)=cos(10000d2ipos)
    (其中pospospos代表 Token 在句子中的绝对位置,iii代表特征维度的索引,ddd为模型的 Embedding 维度。通过这种方式,位置编码与词嵌入向量直接相加,使模型既包含语义信息,又带有独特的位置几何关联。)

三、 编码器部分:多头自注意力的核心机制

编码器(Encoder)由多个完全相同的层堆叠而成,每一层包含两个核心子层:

3.1 缩放点积注意力(Scaled Dot-Product Attention)
  • 每一个输入向量通过不同的线性变换矩阵,衍生出三个角色:Query (Q)Key (K)Value (V)
  • 核心数学计算公式
    Attention(Q,K,V)=softmax(QKTdk)V\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)VAttention(Q,K,V)=softmax(dkQKT)V
    (其中Q,K,V∈Rn×dkQ, K, V \in \mathbb{R}^{n \times d_k}Q,K,VRn×dk。分母中的dk\sqrt{d_k}dk缩放因子,其核心作用是防止在dkd_kdk较大时点积结果过大,导致 Softmax 函数进入饱和区(梯度极度稀疏、消失)。)
3.2 多头注意力(Multi-Head Attention)
  • 允许模型在多个不同的低维子空间中并行关注不同位置的信息。不同“头”关注的侧重点不同(例如一头关注主谓关系,另一头关注代词指代),最后将多头的输出拼接(Concat)并进行线性映射,极大地丰富了表示能力。
3.3 Add & Norm(残差连接与层归一化)
  • Add(残差连接):每一个子层都引入了类似 ResNet 的跨层短路连接:X+SubLayer(X)X + \text{SubLayer}(X)X+SubLayer(X)。这能有效保障深层网络中梯度的顺畅反向传播。
  • Norm(Layer Normalization):不同于 CNN 常用的 BatchNorm,Transformer 采用层归一化(LayerNorm),在单个样本的“所有特征通道”上做归一化,更适合处理变长的序列数据。
3.4 前馈神经网络(Feed Forward Network, FFN)
  • 每个 Encoder 层的最后是一个位置独立的前馈神经网络(通常由两个线性层及激活函数组成),对序列中的每一个 Token 向量独立地进行非线性特征变换。

四、 解码器部分

解码器(Decoder)的结构与编码器高度对称,但为了满足自回归生成的要求,它做出了两个决定性的改造:

  1. 掩码多头自注意力(Masked Multi-Head Attention)
    • 在训练阶段,为了防止未来的信息被提前“偷看”,在自注意力计算中加入了一个上三角矩阵掩码(Mask)。这确保了在预测第iii个位置的目标时,模型只能看到前i−1i-1i1个已经生成的 Token。
  2. 编码器-解码器交叉注意力(Encoder-Decoder Attention)
    • 这一层打破了编解码的界限:它的Query (QQQ)来源于解码器前一层的输出,而Key (KKK)Value (VVV)则直接来自于编码器的最终输出。这使得解码器在生成每个新词时,都能够对输入序列进行全局聚焦和搜索。

五、 输出部分与网络训练

5.1 输出生成(Output Part)
  • 解码器的最终输出向量通过一个**线性层(Linear Layer)**映射回词表大小的高维空间,再通过Softmax函数转化为当前位置预测词表每一个词的概率分布。
5.2 模型的并行训练机制
  • 通过经典的翻译文本实例展示了训练细节。
  • Teacher Forcing(导师引导训练):在训练阶段,即使模型在上一步预测错误,下一步的输入依然采用真实的 Ground Truth,并且得益于 Mask 机制,整个句子的损失(Cross-Entropy Loss)可以一次性并行计算完毕。而在测试/推理阶段,模型则是自回归地、一个词接一个词地流式输出。

六、 本周学习体会与心得

本周的学习彻底拉开了深度学习在复杂时序与大模型(LLM)领域的宏大序幕。通过精妙的Q,K,VQ, K, VQ,K,V投影与缩放点积公式,模型能够自发地计算任意词与词之间的关联权重。而面对由于干掉循环而导致的位置信息缺失,正余弦函数编码(Positional Encoding)则以极其优美和固定的数学几何关系,将时间秩序无缝缝合进了特征向量里。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询