Files
20250724-882ca434/07-注意力机制演进.md
2026-04-25 19:20:45 +08:00

84 lines
3.2 KiB
Markdown
Raw Permalink 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.
# 注意力机制演进
> 大上下文窗口背后的底层技术支撑——没有这些创新1M tokens 就只是理论数字。
## 核心问题
原始 Transformer 的自注意力复杂度是 O(n^2)
- 4K tokens → 1600 万次计算
- 128K tokens → 163 亿次计算
- 1M tokens → 1 万亿次计算
不解决这个问题,长上下文就是空谈。
## 关键创新时间线
| 时间 | 创新 | 影响 |
|------|------|------|
| 2017.06 | **原始 Transformer / 自注意力** | "Attention Is All You Need"O(n^2) 复杂度限制了上下文长度 |
| 2019-2020 | **稀疏注意力变体** | Longformer、BigBird降低注意力复杂度支持更长序列 |
| 2022.05.27 | **FlashAttention** | IO 感知的精确注意力 + 分块计算2-4x 加速;让长上下文训练变得实际可行 |
| 2023 | **FlashAttention-2** | 更好的并行和工作分配 |
| 2023.08 | **Ring Attention** | 分块并行 Transformer将注意力计算分布到多设备理论上支持"无限"上下文 |
| 2023.11 | **Striped Attention** | 优化 Ring Attention 在因果 Transformer 上的效率 |
| 2024 | **FlashAttention-3** | 异步计算 + 低精度支持 |
| 2024.02 | **Ring Attention 处理百万级视频** | 实际验证 1M+ token 处理能力 |
## FlashAttention最关键的突破
### 传统注意力
```
Q, K, V 矩阵(全在 GPU HBM 中)
计算完整 n×n 注意力矩阵(写回 HBM
与 V 相乘(再次读写 HBM
问题GPU 的计算很快,但 HBM 读写是瓶颈
```
### FlashAttention
```
Q, K, V 矩阵
分块Tiling切成小块放入 SRAM
在 SRAM 中完成注意力计算(不写回中间结果)
只输出最终结果到 HBM
效果:减少 HBM 读写次数2-4x 加速,无精度损失
```
## Ring Attention分布式长上下文
```
设备 1 设备 2 设备 3 设备 4
┌──────┐ ┌──────┐ ┌──────┐ ┌──────┐
│ Q块1 │ │ Q块2 │ │ Q块3 │ │ Q块4 │
│ K块1 │ ──→ │ K块1 │ ──→ │ K块1 │ ──→ │ K块1 │ ──→ (环形传递)
│ V块1 │ │ V块1 │ │ V块1 │ │ V块1 │
└──────┘ └──────┘ └──────┘ └──────┘
KV 块在设备间环形传递,每个设备只需要存储自己的 Q 块
→ 上下文长度随设备数线性扩展
→ 理论上:设备数 × 单设备上下文 = 总上下文
```
## 技术栈对应关系
| 上下文里程碑 | 底层技术支撑 |
|-------------|-------------|
| 4K → 32K | 模型架构优化RoPE 位置编码等) |
| 32K → 128K | FlashAttention 让训练可行 |
| 128K → 1M | FlashAttention-2/3 + 稀疏注意力 |
| 1M → 10M | Ring Attention + 分布式计算 |
## 趋势
- **精确注意力没有被抛弃** —— FlashAttention 证明通过 IO 优化,精确注意力也能高效
- **分布式是长上下文的终极答案** —— Ring Attention 让上下文长度和硬件规模线性相关
- **硬件在追赶** —— 更大 SRAM、更快 HBM 让长上下文的成本持续下降