大型语言模型(LLM)的核心架构通常基于 Transformer,其关键组成部分可概括如下:
1. 核心架构:Transformer
LLM 的核心是 Transformer 架构(由 Vaswani 等人在 2017 年提出),包含两大模块:
- 编码器(Encoder):处理输入文本,提取特征(如 BERT)。
- 解码器(Decoder):生成输出文本(如 GPT 系列)。
现代 LLM(如 GPT、LLaMA)多采用 纯解码器架构(Decoder-only),更适合生成任务。
2. 核心组件详解
(1) 词嵌入层(Embedding Layer)
- 作用:将离散的词汇(Token)转换为连续向量(Embedding)。
- 技术:
- 输入层:
Token Embedding
(词向量) - 位置编码:
Positional Encoding
(或 RoPE/Rotary Positional Embedding) - 输出:
Token Embedding + Positional Embedding
- 输入层:
(2) 注意力机制(Attention Mechanism)
- 核心功能:建模词汇间的依赖关系,动态分配权重。
- 关键类型:
- 自注意力(Self-Attention):计算序列内部关联(公式如下):
Attention(Q,K,V)=softmax(QKTdk)V \text{Attention}(Q,K,V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right)V Attention(Q,K,V)=softmax(dkQKT)V - 多头注意力(Multi-Head Attention):并行多个注意力头,增强表达能力。
- 自注意力(Self-Attention):计算序列内部关联(公式如下):
(3) 前馈神经网络(Feed-Forward Network, FFN)
- 结构:两层全连接层 + 非线性激活(如 GeLU/SiLU):
FFN(x)=GeLU(xW1+b1)W2+b2 \text{FFN}(x) = \text{GeLU}(xW_1 + b_1)W_2 + b_2 FFN(x)=GeLU(xW1+b1)W2+b2 - 作用:对注意力输出做非线性变换,增强模型表达能力。
(4) 残差连接(Residual Connection)与层归一化(LayerNorm)
- 残差连接:将输入直接加到输出上(
Output = Layer(x) + x
),缓解梯度消失。 - 层归一化:对每层输出标准化(均值为 0,方差为 1),加速训练收敛。
(5) 位置编码(Positional Encoding)
- 作用:为序列注入顺序信息(因 Transformer 本身无时序感知)。
- 常见方案:
- 绝对位置编码:Sinusoidal(原始 Transformer)
- 旋转位置编码(RoPE):通过旋转矩阵引入位置信息(用于 LLaMA、GPT-J)。
(6) 输出层(Output Layer)
- 功能:将模型输出转换为概率分布。
- 流程:
- 最后一层输出 →
LayerNorm
- 线性投影至词表大小:
Logits = Output ⋅ W_vocab
- Softmax 生成概率:
P(Token) = softmax(Logits)
- 最后一层输出 →
3. 训练与优化技术
- 预训练目标:
- 自回归(Autoregressive):预测下一个词(如 GPT)
- 掩码语言建模(MLM):预测被遮蔽的词(如 BERT)
- 扩展技术:
- 缩放点积注意力(Scaled Dot-Product):避免梯度爆炸
- KV 缓存(Key-Value Cache):加速推理
- 模型并行(Tensor/Pipeline Parallelism):支持超大模型训练
4. 典型模型架构对比
模型类型 | 代表模型 | 架构特点 |
---|---|---|
纯解码器 | GPT-3, LLaMA | 堆叠 Transformer 解码器层 |
编码器-解码器 | T5, BART | 完整 Encoder-Decoder 结构 |
纯编码器 | BERT, RoBERTa | 仅使用 Transformer 编码器 |
5. 总结:LLM 的工作流程
关键点:LLM 通过多层 Transformer 块迭代学习上下文表示,最终基于概率生成连贯文本。其强大能力源于海量数据预训练与百亿级参数的协同作用。