Transformer 模型架构与核心原理详解
一、Transformer 的本质
Transformer 架构是自然语言处理领域的突破性模型,主要由四大部分构成:
- 输入层:通过词嵌入(Embedding)和位置编码,将文本数据转化为模型可处理的向量表示。
- 编码器(Encoder):核心的多层结构,负责从输入数据中提取深层特征。
- 解码器(Decoder):利用提取的特征生成输出序列。
- 输出层:线性层和 Softmax 激活函数,将输出转换为概率分布,预测下一个词或字符。
此架构擅长学习数据模式,在机器翻译、文本生成等任务中表现出色。
二、Transformer 架构详解
1. 输入部分
源文本嵌入层将词汇从数字映射为稠密向量,以捕捉语义联系,增强模型对词汇上下文的理解。位置编码器为序列每个位置构建独特向量,使模型能够感知序列元素间的位置关联,这对语言理解与生成至关重要。
2. 编码器部分
Transformer 编码器由 $N$ 个相同的层堆叠而成(通常 $N=6$)。每层包含两个子层:
- 多头自注意力机制(Multi-Head Self-Attention):并行关注序列不同位置的信息。
- 前馈神经网络(Feed Forward Network):进行非线性变换。 每层后均配备残差连接(Residual Connection)和层归一化(Layer Normalization),即 Add&Norm 操作,以保障信息无损传递并稳定训练。
3. 解码器部分
解码器同样由 $N$ 个相同的层堆叠而成。每层包含三个子层:
- 掩码多头自注意力(Masked Multi-Head Self-Attention):防止当前位置看到未来信息。
- 编码器 - 解码器注意力(Encoder-Decoder Attention):辅助解码器关注编码器的输出。
- 前馈全连接层。 同样配合残差连接和层归一化。
4. 输出部分
线性变换层将解码器输出映射至目标词汇表维度,Softmax 层将其转化为概率分布,模型据此选择概率最高的词作为预测结果。
三、核心原理:注意力机制
多头注意力机制让模型并行关注多位置信息。其核心流程如下:
- Query、Key 和 Value 矩阵:
- Q (Query):标示当前查询焦点。
- K (Key):存储输入序列标识,用于匹配。
- V (Value):存放实际数据信息。
- 缩放点积注意力(Scaled Dot-Product Attention):
计算公式为 $\text{Attention}(Q, K, V) = \text{softmax}(\frac{QK^T}{\sqrt{d_k}})V$。
- 点积计算评估 Query 与 Key 的相似度。
- 缩放因子 $\sqrt{d_k}$ 防止梯度消失,确保 softmax 数值稳定。
- Softmax 将分数转换为概率权重。
- 加权求和得到最终输出。
四、架构改进与变体
1. BERT
BERT 基于 Transformer 编码器,采用双向机制,能同时捕捉输入序列的前后文语境。适用于问答、文本分类等任务,得益于大规模预训练,能快速适应下游任务。
2. GPT
GPT 基于 Transformer 解码器,采用单向自回归机制,专注于上下文信息的捕捉与生成。适用于文本生成、对话系统等任务。


