Transformer(下)—— 从多头注意力到完整架构落地

Transformer 的核心能力构建于多头自注意力、编码器完整结构、解码器核心设计之上,这也是衔接基础模块与实际应用的关键。本次内容作为 Transformer 解析的下篇,将从基础自注意力延伸到多头自注意力机制,完整拆解编码器、解码器的层结构与工作逻辑,同时讲解 Encoder-Decoder 的协同工作流程,最后结合实际场景说明不同 Transformer 架构的选型思路。

抛开冗余的数学推导,以模块功能 + 工作逻辑 + 场景适配为核心,讲清 Transformer 的完整落地逻辑,让大家理解 “基础模块如何组合成可用架构”“不同架构为何适配不同任务”,为后续学习大模型微调、架构优化打下坚实基础。

一、基础自注意力的升级:多头自注意力机制(Multi-Head Attention)

原始的基础自注意力机制能实现全局上下文建模,但仅能从单一维度捕捉 token 间的关联关系,而现实中的文本语义关联是多维度的 —— 比如理解 “用校园场景解释 Python 循环”,既需要捕捉 “Python 循环” 与 “校园场景” 的语义关联,也需要捕捉 “解释” 与前后文的语法关联

多头自注意力机制的设计,就是让模型从多个不同维度同时捕捉 token 间的关联,再将多维度的特征融合,让上下文建模更全面、更精准。

1. 多头自注意力的核心定义

多头自注意力机制,是指将基础自注意力机制复制为多个独立的 “注意力头”(Head),每个头使用独立的 Q/K/V 权重矩阵,从不同维度计算注意力权重、融合上下文信息,最后将所有头的输出拼接并线性变换,得到最终的多维度上下文特征向量。

原始 Transformer 中设置了8 个注意力头,这也是后续多数大模型的基础配置,不同头的分工隐含着对文本不同维度关联的捕捉。

2. 多头自注意力的四步工作流程

以原始 Transformer 的 8 头注意力为例,结合基础自注意力的三步流程,多头自注意力的工作可概括为四步,全程保持并行计算特性:

  1. 特征拆分:将输入向量(维度:序列长度 ×d_model,d_model=512)按最后一维拆分为 8 个独立的子向量,每个子向量维度为序列长度 ×64(512/8=64),每个子向量对应一个注意力头的输入;
  2. 独立计算:8 个注意力头各自基于自身的子向量,执行基础自注意力的三步流程(生成 Q/K/V→计算注意力权重→加权求和),每个头输出一个维度为「序列长度 ×64」的上下文特征向量;
  3. 特征拼接:将 8 个注意力头的输出向量按最后一维拼接,得到维度为「序列长度 ×512」的拼接向量,融合多维度的上下文特征;
  4. 线性变换:通过一个可训练的线性权重矩阵,对拼接向量进行一次线性变换,消除拼接带来的特征冗余,得到多头自注意力的最终输出,维度与输入向量保持一致(序列长度 ×d_model)。

3. 多头自注意力的核心价值

  • 多维度关联捕捉:每个注意力头专注于捕捉文本的一个维度关联(如语义、语法、位置),8 个头协同实现多维度的全面上下文建模,解决了基础自注意力单一维度的局限;
  • 特征粒度细化:将高维的 d_model 拆分为低维子向量,让每个头能更精细地捕捉局部特征关联,提升模型对细粒度语义的理解能力;
  • 保持架构一致性:最终输出维度与输入一致,能无缝衔接后续的前馈神经网络、残差连接等模块,不破坏 Transformer 的整体模块化设计。

4. 通俗场景解读

以输入序列[用, 校园, 场景, 解释, Python, 循环]为例:

  • 头 1:重点捕捉 **“Python” 与 “循环”** 的语义关联,理解核心主体;
  • 头 2:重点捕捉 **“校园” 与 “场景”** 的组合关联,理解场景限定;
  • 头 3:重点捕捉 **“解释” 与前后文 ** 的语法关联,理解动作指向;
  • 其余头:捕捉 token 间的位置关联、整体语义关联等;
  • 最终融合所有头的特征,模型能全面理解 “用校园场景解释 Python 循环” 的完整语义。

二、Transformer 的编码器:完整层结构与工作逻辑

编码器(Encoder)是 Transformer 的 **“理解模块”,核心负责对输入序列进行无偏的全局上下文特征提取 **,其结构具有高度的重复性和一致性—— 原始 Transformer 由 6 个完全相同的编码器层堆叠而成,每个编码器层的输入输出维度完全一致,可根据任务需求灵活堆叠层数。

1. 单个编码器层的完整结构

单个编码器层是 Transformer 的核心基础单元,由两大核心模块 + 两大辅助模块组成,按固定顺序执行,且所有模块均支持并行计算:层归一化 → 多头自注意力机制 → 残差连接 → 层归一化 → 前馈神经网络 → 残差连接这一结构也被称为 **“Pre-LN” 架构 **(层归一化在前),是现代 Transformer 的标准设计,相比传统的 “层归一化在后”,能大幅提升模型的训练稳定性和收敛速度。

2. 编码器层的核心工作逻辑

以单个编码器层为例,结合模块功能,其工作逻辑可概括为:

  1. 输入标准化:对上层输入的特征向量做层归一化,消除特征值差异,保证训练稳定性;
  2. 全局上下文建模:通过多头自注意力机制,从多维度捕捉 token 间的全局关联,生成融合上下文的特征向量;
  3. 残差融合:将多头自注意力的输出与层归一化前的原始输入做残差连接,缓解梯度消失,保留原始特征;
  4. 特征二次标准化:对残差连接的输出再次做层归一化,为后续特征变换做准备;
  5. 深度特征变换:通过前馈神经网络对特征向量做非线性深度变换,提取更复杂的语义特征;
  6. 最终特征融合:将前馈神经网络的输出与二次归一化前的向量做残差连接,得到编码器层的最终输出。

核心特点:编码器的多头自注意力为双向自注意力—— 每个 token 能无差别地关注序列中所有位置的 token,无任何屏蔽,保证上下文建模的无偏性。

3. 多层编码器的堆叠逻辑

6 个编码器层按串行堆叠的方式工作,前一层的输出作为后一层的输入,层层递进实现特征的逐步抽象

  • 第 1-2 层编码器:捕捉基础的字符、词汇级关联(如 “Python” 是名词,“循环” 是名词);
  • 第 3-4 层编码器:捕捉短语、句子级的语义关联(如 “Python 循环” 是一个编程概念);
  • 第 5-6 层编码器:捕捉全局的篇章级关联(如 “校园场景” 是对 “解释 Python 循环” 的场景限定)。

层数越多,模型能捕捉的语义特征越抽象、越复杂,但同时会增加计算量和过拟合风险,需根据任务难度和数据量灵活调整。

三、Transformer 的解码器:生成任务的核心设计

解码器(Decoder)是 Transformer 的 **“生成模块”,核心负责基于编码器的全局特征和已生成的输出序列,自回归式地预测下一个 token,是实现文本生成、代码生成等序列生成任务的关键。与编码器类似,原始 Transformer 的解码器由6 个完全相同的解码器层 ** 堆叠而成,且每个解码器层在编码器层的基础上做了针对性优化,适配生成任务的需求。

1. 单个解码器层的完整结构

解码器层在编码器层的基础上,新增了掩码多头自注意力编码器 - 解码器注意力两个核心模块,完整结构为:层归一化 → 掩码多头自注意力 → 残差连接 → 层归一化 → 编解码注意力 → 残差连接 → 层归一化 → 前馈神经网络 → 残差连接新增的两个模块是解码器适配生成任务的关键,分别解决生成顺序性输入输出关联问题。

2. 解码器层的三大核心注意力机制

解码器层包含三种不同的注意力机制,各司其职,协同实现生成任务的上下文建模:

  1. 掩码多头自注意力(Masked Multi-Head Attention)

    • 核心作用:保证文本生成的顺序性,避免模型 “提前看到” 后续未生成的 token,本质是单向自注意力
    • 实现逻辑:在计算注意力权重时,通过上三角掩码屏蔽当前 token 对后续所有 token的注意力,让每个 token 仅能关注自身及前面的 token
    • 场景适配:比如生成 “循环就像课间操报数” 时,生成 “课间操” 时,无法关注到后续的 “报数”,符合人类的书写 / 表达顺序。
  2. 编码器 - 解码器注意力(Encoder-Decoder Attention)

    • 核心作用:建立输入序列输出序列之间的关联,让解码器在生成时能精准参考编码器提取的输入全局特征;
    • 实现逻辑:以解码器的 Q 向量为查询,以编码器的最终输出为 K、V 向量计算注意力,让输出序列的每个 token 能关注输入序列的核心信息;
    • 场景适配:机器翻译中,输出的中文 token 能通过该注意力关注输入的英文 token 核心语义,保证翻译的准确性。
  3. 前馈神经网络

    • 与编码器的前馈神经网络完全一致,负责对融合后的特征做非线性深度变换,提升生成特征的表达能力。

3. 解码器的自回归生成特性

解码器的所有设计都围绕自回归生成展开 —— 每次仅能生成一个 token,生成的 token 会作为下一次计算的输入,逐步拼接成完整的输出序列。这一特性决定了解码器的推理过程是串行的,但训练过程仍可通过掩码实现并行计算,兼顾训练效率和生成逻辑。

四、Encoder-Decoder 的协同工作:完整的序列到序列流程

Transformer 的原始架构是Encoder-Decoder 双塔结构,编码器和解码器通过固定的接口协同工作,完成从输入序列输出序列的端到端转换,核心适配 ** 序列到序列(Seq2Seq)** 任务,如机器翻译、文本摘要、对话生成等。

以 ** 机器翻译(英文→中文)** 为例,完整的协同工作流程可概括为 6 步:

  1. 输入预处理:将英文输入序列做分词、词嵌入 + 位置编码,生成包含语义 + 位置的输入向量,送入编码器;
  2. 编码器全局特征提取:6 层编码器对输入向量做层层特征抽象,生成包含英文全局语义的编码器特征向量,作为解码器的参考;
  3. 输出初始化:将中文的 ** 开始符(<SOS>)** 做嵌入 + 位置编码,作为解码器的初始输入;
  4. 解码器第一次预测:解码器通过掩码自注意力捕捉初始输入的特征,通过编解码注意力关联编码器的英文特征,预测出第一个中文 token;
  5. 自回归迭代生成:将生成的第一个中文 token 拼接在开始符后,作为解码器的新输入,重复步骤 4,依次预测出后续的中文 token;
  6. 终止生成:当解码器预测出 ** 结束符(<EOS>)** 时,停止生成,拼接所有生成的 token,得到最终的中文输出序列。

核心衔接点:编码器的最终输出作为解码器所有层的编解码注意力的 K、V 向量,让解码器在整个生成过程中,能随时参考输入序列的全局语义特征,保证生成结果与输入的关联性。

五、Transformer 的架构选型:不同架构适配不同任务

原始的 Encoder-Decoder 双塔结构是 Transformer 的基础,但在实际应用中,会根据任务类型对架构进行简化和优化,衍生出三种主流的 Transformer 架构,分别适配不同的 NLP 任务,也是现代大模型的核心架构基础。

1. Encoder-Decoder 双塔架构(原始架构)

  • 核心结构:完整的编码器 + 完整的解码器;
  • 核心特性:能建立输入与输出的双向关联,无偏捕捉输入全局特征,精准生成输出序列;
  • 适配任务:序列到序列的转换任务,如机器翻译、文本摘要、对话生成、数据生成
  • 代表模型:T5、BART、MarianMT。

2. Encoder-only 单塔架构(仅编码器)

  • 核心结构:移除解码器,仅保留编码器堆叠;
  • 核心特性:擅长无偏的全局上下文特征提取,输出的特征向量能精准表征输入序列的语义;
  • 适配任务:序列理解类任务,如文本分类、情感分析、命名实体识别、关键词提取
  • 代表模型:BERT、RoBERTa、ALBERT。

3. Decoder-only 单塔架构(仅解码器)

  • 核心结构:移除编码器,仅保留解码器堆叠,将解码器的编解码注意力替换为掩码自注意力
  • 核心特性:擅长自回归式的序列生成,能基于前文持续生成连贯的文本,计算效率相对较高;
  • 适配任务:自回归生成类任务,如文本续写、代码生成、大语言模型对话、文字接龙
  • 代表模型:GPT 系列、Phi-2、LLaMA、Falcon。

4. 架构选型核心原则

  1. 理解类任务选 Encoder-only:只需提取序列特征,无需生成新序列,追求特征的精准性;
  2. 生成类任务选 Decoder-only:只需基于前文生成后续序列,追求生成的连贯性和效率;
  3. 输入输出双向转换选 Encoder-Decoder:需要同时理解输入和生成输出,追求输入输出的关联性。

关键结论:现代大语言模型(如 GPT、LLaMA)均采用Decoder-only 架构,因为大模型的核心任务是自回归式的自然语言生成,该架构能在保证生成效果的同时,简化结构、提升推理效率,更适合大参数量的模型训练和落地。

六、Transformer 的核心优势与落地意义

作为现代生成式 AI 的架构基石,Transformer 的设计并非单一模块的创新,而是模块化、并行化、注意力机制的综合创新,其核心优势贯穿于模型训练、推理、落地的全流程,也是它能取代 RNN/LSTM,成为 NLP 乃至整个 AI 领域主流架构的根本原因。

1. Transformer 的四大核心优势

  1. 并行计算效率高:全模块支持并行计算,充分利用现代 GPU/TPU 的算力,大幅提升模型训练和推理速度;
  2. 上下文建模能力强:基于自注意力机制,能捕捉任意距离的 token 关联,解决长文本建模的痛点;
  3. 架构高度模块化:编码器、解码器层结构一致,输入输出维度统一,可灵活堆叠、拆分,适配不同任务;
  4. 特征表达能力强:多头自注意力从多维度捕捉特征,前馈神经网络做深度非线性变换,能提取复杂的抽象语义特征。

2. Transformer 的落地意义

Transformer 的出现,不仅重构了 NLP 领域的技术体系,更成为多模态 AI、大模型、AI Agent等前沿技术的架构基础:

  • 多模态模型(如 CLIP、GPT-4V):将图像、音频等特征转化为序列向量,通过 Transformer 实现跨模态的特征关联;
  • 大语言模型(如 GPT-4、LLaMA 3):基于 Decoder-only 架构做参数量扩容和训练优化,实现通用的自然语言理解和生成;
  • AI Agent:基于 Transformer 的序列生成能力,实现任务规划、工具调用的逻辑推理和指令生成。

可以说,理解 Transformer,就是理解现代 AI 的核心设计思路,其模块化、并行化、注意力驱动的设计思想,也为后续的 AI 架构创新指明了方向。

七、总结:Transformer 的完整知识体系

结合上下两篇内容,Transformer 的完整知识体系可概括为 **“基础模块 - 核心层结构 - 完整架构 - 场景适配”** 四层,层层递进,从微观到宏观构建完整的理解:

  1. 基础模块:词嵌入、位置编码为模型提供语义 + 位置的基础向量,是所有计算的前提;
  2. 核心机制:自注意力升级为多头自注意力,实现多维度的全局上下文建模,是 Transformer 的灵魂;
  3. 层结构:编码器实现无偏的特征提取,解码器实现有序的序列生成,是基础模块的组合落地;
  4. 完整架构:衍生出 Encoder-only、Decoder-only、Encoder-Decoder 三种架构,分别适配理解、生成、转换三类任务,是实际应用的选型依据。

Transformer 的设计并非完美,仍存在推理过程串行、长文本注意力计算成本高、可解释性差等问题,后续的大模型技术(如 FlashAttention、GPT-4 的 MoE 架构、长上下文模型)均是对 Transformer 的优化和升级。但作为基础架构,Transformer 的核心设计思想仍将长期主导 AI 领域的发展。

Logo

有“AI”的1024 = 2048,欢迎大家加入2048 AI社区

更多推荐