Transformer 架构:重塑序列建模的基石
1. 引言:从“循环”到“注意力”的范式转移
在 2017 年 Google 团队发表划时代论文《Attention Is All You Need》之前,序列建模领域长期被循环神经网络(RNN)及其变体(LSTM、GRU)所统治。然而,RNN 固有的串行计算特性导致其无法充分利用 GPU 的并行算力,且在面对长序列时难以捕捉远距离依赖关系。
Transformer 的诞生彻底打破了这一僵局。它完全摒弃了循环和卷积结构,仅依赖注意力机制(Attention Mechanism) 来建立输入与输出之间的全局依赖关系。这一架构不仅实现了训练速度的数量级提升,更成为了随后几年大语言模型(LLM)爆发的技术底座(如 BERT, GPT 系列, LLaMA 等)。
2. 核心设计理念
Transformer 的设计哲学可以概括为两点:
- 并行化(Parallelization):不再按时间步依次计算,而是同时处理整个序列,极大提升了训练效率。
- 全局视野(Global Context):通过自注意力机制,序列中任意两个位置的距离都是“1”,无论序列多长,模型都能直接捕捉到它们之间的关联。
3. 宏观架构:Encoder-Decoder 结构
原始 Transformer 采用经典的 Encoder-Decoder 架构,主要用于机器翻译任务。
注:现代大模型通常只使用其中一部分。例如,BERT 是 Encoder-only,GPT 系列是 Decoder-only。
4. 微观拆解:核心组件详解
4.1 输入嵌入与位置编码 (Input Embedding & Positional Encoding)
由于 Transformer 没有 RNN 的时间步进概念,它本身是置换不变(Permutation Invariant)的,即打乱输入顺序不影响输出。为了保留序列的顺序信息,必须引入位置编码。
- 词嵌入 (Word Embedding):将单词映射为固定维度的向量 $d_{model}$。
- 位置编码 (Positional Encoding, PE):生成一个与词嵌入维度相同的向量,表示单词在序列中的位置。
- 作用:让模型能够学习到相对位置关系,且能泛化到比训练集更长的序列。

作用:让模型能够学习到相对位置关系,且能泛化到比训练集更长的序列。
最终输入: Input = Embedding + PositionalEncoding
4.2 缩放点积注意力 (Scaled Dot-Product Attention)
这是 Transformer 的灵魂。其目的是让序列中的每个词都能“关注”到序列中其他所有词的重要性。
公式如下:

4.3 多头注意力机制 (Multi-Head Attention)
单一的注意力头可能只能关注到一种类型的关系(如语法关系)。多头机制允许模型在不同的子空间中并行学习多种关系(如语义关系、指代关系、位置关系等)。

4.4 前馈神经网络 (Position-wise Feed-Forward Networks, FFN)
在每个注意力层之后,都接有一个全连接前馈网络。它对序列中的每个位置独立且相同地应用变换:

通常包含一个 ReLU (或 GELU) 激活函数,用于增加模型的非线性表达能力。
4.5 残差连接与层归一化 (Residual Connection & Layer Normalization)
为了解决深层网络训练困难的问题,Transformer 在每个子层(注意力层和 FFN 层)周围都使用了残差连接,并紧接着层归一化(LayerNorm)。

5. Decoder 的特殊设计:掩码机制

6. Transformer vs. RNN/CNN:优势对比

7. 局限性与演进
尽管 Transformer 极其成功,但它并非完美:

8. 结语:大模型时代的引擎
Transformer 不仅仅是一个模型架构,它已经成为人工智能领域的新汇编语言。
- Encoder-only 变体(如 BERT)统治了理解类任务。
- Decoder-only 变体(如 GPT, LLaMA, Qwen)开启了生成式 AI 和大语言模型的时代。
- Encoder-Decoder 变体(如 T5, Whisper)在翻译和语音识别中依然表现卓越。
理解 Transformer,就是理解当前 AI 浪潮的底层逻辑。它的出现证明了:简单的模块(Attention),配合海量的数据和算力,可以涌现出惊人的智能。
浙公网安备 33010602011771号