Files
note_sync/大模型/大模型架构基础.md
T

249 lines
7.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 大模型架构基础
> 理解现代大语言模型的底层架构 — Transformer、注意力机制与关键组件
---
## 发展脉络
```
2017 Transformer 论文
│ "Attention Is All You Need"
▼
2018 GPT-1 / BERT
│ 解码器-only / 编码器-only
▼
2020 GPT-3(175B)— Scaling Law 确立
▼
2022 ChatGPT / GPT-3.5 — RLHF 对齐
▼
2023 GPT-4 / LLaMA / Claude 2
│ 多模态、MoE 兴起
▼
2024 LLaMA 3 / Qwen 2.5 / DeepSeek-V3
▼
2025 GPT-5 / Claude Opus 5 / DeepSeek-V4
大规模 MoE、混合注意力、推理时扩展
```
---
## 一、Transformer 架构
现代大语言模型的基石,发表于 2017 年。核心思想:用**自注意力机制**取代循环/卷积,实现并行计算。深度讲解见 [[Transformer 架构详解]]。
### 架构总览
```
┌──────────────┐
输入文本 → │ Embedding │ → Token 向量
└──────┬───────┘
▼
┌─────────────────────────────┐
│ Transformer Block × N │ ← 重复 N 层(数十到数百层)
│ ┌───────────────────────┐ │
│ │ Multi-Head Attention │ │ ← 核心:自注意力
│ │ + Layer Norm + 残差 │ │
│ ├───────────────────────┤ │
│ │ Feed-Forward (FFN) │ │ ← 逐位置的全连接网络
│ │ + Layer Norm + 残差 │ │
│ └───────────────────────┘ │
└─────────────┬───────────────┘
▼
┌──────────────┐
│ 输出头 │ → 预测下一个 Token
└──────────────┘
```
### 三种变体
| 类型 | 代表模型 | 特点 |
|---|---|---|
| **编码器-only** | BERT、RoBERTa | 双向注意力,适合理解任务(分类、NER) |
| **解码器-only** | GPT 系列、LLaMA、DeepSeek | 因果注意力(只看左边),适合生成任务 |
| **编码器-解码器** | T5、BART | 融合两者,适合翻译、摘要 |
> 现代大语言模型**几乎全部使用解码器-only**(自回归生成)。
---
## 二、自注意力机制(Self-Attention)
### 直观理解
> 让每个词"看到"句子中所有其他词,并决定应该关注哪些。
```
"我 爱 北京 天安门"
│ │ │ │
└─────┼──────┼───────┘
│ │
每个词都和所有词计算关联度(注意力权重)
```
### 数学过程
对每个输入的 Token 向量,计算三个投影:
| | 符号 | 含义 |
|---|---|---|
| **Q(Query)** | 查询 | "我在找什么?" |
| **K(Key)** | 键 | "我有什么?" |
| **V(Value)** | 值 | "我的实际内容" |
$$
\text{Attention}(Q, K, V) = \text{softmax}\left(\frac{QK^T}{\sqrt{d_k}}\right) V
$$
步骤:
1. **Q × K^T** → 计算每对 token 之间的关联分数(注意力矩阵)
2. **÷ √d_k** → 缩放,防止梯度消失
3. **Softmax** → 归一化为概率分布
4. **× V** → 用注意力权重加权求和,得到输出
### 多头注意力(Multi-Head Attention)
> 不是做一次注意力,而是并行做多次(如 8/16/32 个头),每个头关注不同的语义模式。
- 头 1 可能关注"语法结构"
- 头 2 可能关注"实体关系"
- 头 3 可能关注"长距离依赖"
---
## 三、关键组件
### 1. Token 与 Tokenizer
| 概念 | 说明 |
|---|---|
| **Token** | 文本被拆分的最小语义单元 |
| **Tokenizer** | 将文本切分为 Token 的工具(BPE、SentencePiece 等) |
| **词表大小** | 通常 32K ~ 256K,DeepSeek V4 使用了更大词表 |
```
"Hello, world!" → ["Hello", ",", " world", "!"]
"你好世界" → ["你好", "世界"]
```
### 2. 位置编码(Positional Encoding)
Transformer 本身**不感知顺序**,需要额外注入位置信息:
| 类型 | 说明 | 代表 |
|---|---|---|
| **绝对位置编码** | 每个位置有唯一的向量 | 原始 Transformer 的正弦编码 |
| **相对位置编码** | 编码 token 之间的相对距离 | T5 的相对偏置 |
| **旋转位置编码(RoPE)** | 对 Q/K 做旋转,编码相对位置 | LLaMA、DeepSeek、Qwen 主流方案 |
### 3. 前馈网络(Feed-Forward Network, FFN)
```
FFN(x) = Act(W₂ · Act(W₁ · x + b₁) + b₂)
```
- 两层全连接,中间有激活函数(GELU/SwiGLU)
- 参数量占比最大(约 2/3)
- SwiGLU 是现代模型的首选激活函数
- 深度讲解见 [[FFN 前馈网络详解]]
### 4. 残差连接(Residual Connection)
```
输出 = LayerNorm(x + SubLayer(x))
```
- 缓解深层网络的梯度消失
- 让模型可以"跳过"不必要的变化
- GPT 使用 Pre-LN(层归一化在子层之前)
### 5. 层归一化(Layer Normalization)
- 对每个样本的特征维度做归一化
- 稳定训练、加速收敛
- 现代主流:**RMSNorm**(去掉均值中心化,更快更简单)
---
## 四、训练范式
```
┌──────────────┐
│ 1. 预训练 │ 海量互联网文本,无监督学习(预测下一个 Token)
│ Pretraining │ 数十 TB 数据,数万 GPU,数周到数月
└──────┬───────┘
▼
┌──────────────┐
│ 2. 监督微调 │ 高质量人工标注的指令-回复对
│ SFT │ 让模型学会"对话格式"和"遵循指令"
└──────┬───────┘
▼
┌──────────────┐
│ 3. 对齐训练 │ RLHF / DPO / RLVR
│ Alignment │ 让模型输出更安全、更有用、更符合人类偏好
└──────────────┘
```
### 关键概念
| 概念 | 说明 |
|---|---|
| **Scaling Law** | 模型性能随参数量、数据量、计算量幂律增长 |
| **涌现能力** | 大模型独有的、小模型没有的能力(如思维链推理) |
| **RLHF** | 基于人类反馈的强化学习 — 训练奖励模型指导策略优化 |
| **DPO** | 直接偏好优化 — 更简单地对齐方法,不需要单独的奖励模型 |
---
## 五、推理时技术
### 自回归生成(Autoregressive Generation)
```
输入:"今天天气" → 预测下一个 Token "真"
"今天天气真" → 预测下一个 Token "好"
"今天天气真好" → 预测下一个 Token "<eos>"(停止)
```
每次生成一个 Token,直到输出结束符或达到最大长度。
### 关键概念
| 概念 | 说明 |
|---|---|
| **Temperature** | 控制随机性,越高越随机(创造性高),越低越确定 |
| **Top-p(核采样)** | 只从累积概率 ≥ p 的最少 Token 集合中采样 |
| **Top-k** | 只从概率最高的 k 个 Token 中采样 |
| **KV Cache** | 缓存已生成 Token 的 Key/Value,避免重复计算,加速推理 |
| **上下文窗口** | 模型能同时"看到"的最大 Token 数(现在主流 128K~1M) |
---
## 六、当前主流架构扩展
### MoE(混合专家)
> 详见 [[MoE 混合专家架构]]
- 不是所有参数都参与每次推理
- 每个 Token 只路由到少数"专家"子网络
- 总参数极大但计算量可控
### 多模态扩展
> 见 [[多模态大模型]]
- 在 LLM 基础上添加视觉/音频编码器
- 通过投影器对齐不同模态的 Token
---
## 扩展阅读
- 原始论文:[Attention Is All You Need (2017)](https://arxiv.org/abs/1706.03762)
- [The Illustrated Transformer](https://jalammar.github.io/illustrated-transformer/) — 图文详解 Transformer
---
*最后更新:2026-08-05*