Ch24 数值分析与凸优化补遗 · 信息图
信息图:数值精度对比
flowchart TB
F32[FP32\n1+8+23\n指数 8 尾数 23] --> F16[FP16\n1+5+10\n动态范围窄]
F32 --> BF[BF16\n1+8+7\nGoogle Brain]
F16 --> F8[FP8\nE4M3 / E5M2\nH100]
F8 --> F4[FP4\nMX 格式\n2024]
F4 --> F2[1.58-bit\nBitNet 2024]
F32 -.精度.-> P1[1.19e-7]
F16 -.精度.-> P2[9.77e-4]
BF -.精度.-> P3[7.81e-3]
classDef core fill:#f9f,stroke:#333,stroke-width:2px
class F32 core
信息图:凸优化方法谱系
flowchart TB
O[凸优化] --> Z[零阶]
O --> F[一阶]
O --> S[二阶]
Z --> Z1[随机搜索]
Z --> Z2[贝叶斯优化]
F --> F1[GD 梯度下降]
F --> F2[SGD 随机]
F --> F3[动量 SGD]
F --> F4[Adam/AdamW]
F --> F5[AdaGrad]
S --> S1["Newton\nO(n³)"]
S --> S2[BFGS 秩 2]
S --> S3[L-BFGS 限内存]
S --> S4[Trust Region]
S --> S5[K-FAC/Shampoo]
F4 --> A[Transformer 训练]
S3 --> B[LLM 微调]
S5 --> C[大模型二阶加速 2-3×]
信息图:KKT 4 条件
flowchart LR
K[KKT 最优解] --> K1[Stationarity\n∇f + Σλ∇g + Σν∇h = 0]
K --> K2[Primal Feasibility\ng ≤ 0, h = 0]
K --> K3[Dual Feasibility\nλ ≥ 0]
K --> K4[Complementary Slackness\nλᵢ gᵢ = 0]
K1 & K2 & K3 & K4 --> S[SVM 推导]
S --> M[对偶问题]
M --> W[弱对偶 f ≥ g]
M --> W2[强对偶 f = g*]
W2 --> SC[Slater 条件]
信息图:分布式训练拓扑
flowchart TB
D[分布式 SGD] --> S[同步]
D --> A[异步]
D --> F[联邦]
S --> S1[AllReduce\nRing 拓扑]
S --> S2[PS\n参数服务器]
S --> S3[ZeRO\nDeepSpeed]
A --> A1[Hogwild!\n无锁]
A --> A2[EA-SGD\n弹性平均]
A --> A3[Async PS\n陈旧梯度]
F --> F1[FedAvg\nMcMahan 2017]
F --> F2[FedProx\n近端项]
F --> F3[FedNova\n归一化]
信息图:数值稳定性 4 大场景
flowchart LR
C1[Catastrophic\nCancellation] --> Fix1[减去大头]
C1 -.例.-> E1["√1+x - 1"]
C2[Overflow] --> Fix2["Softmax 减 max"]
C2 -.例.-> E2["exp 1000 = inf"]
C3[Underflow] --> Fix3["Log-Sum-Exp"]
C3 -.例.-> E3["log 0 = -inf"]
C4[梯度消失/爆炸] --> Fix4[BN/LN/Clip]
C4 -.例.-> E4[深层 RNN]
Fix1 & Fix2 & Fix3 & Fix4 --> V[Loss Scaling + bf16]
信息图:稀疏矩阵存储格式
flowchart LR
M[稀疏矩阵] --> CSR[CSR\n压缩行]
M --> COO[COO\n坐标]
M --> ELL[ELL\nELLPACK]
M --> BSR[BSR\n块稀疏]
M --> CSC[CSC\n压缩列]
CSR --> UC1[行切片友好\nSpMV 高效]
COO --> UC2[构造灵活\n转 CSR 简单]
ELL --> UC3[GPU 友好\n定长]
BSR --> UC4[小块结构稀疏\nGPU 高效]
数据卡片
- FP32 Epsilon: 1.19e-7
- FP16 Epsilon: 9.77e-4
- BF16 Epsilon: 7.81e-3
- CSR 内存: 仅存储 nnz×(int+float)
- Shampoo 加速: Transformer 训练 2-3×
- AllReduce Ring: O(N) 带宽, 最优通信
- BFGS 收敛: 超线性, 优于 SGD
- K-FAC: Google 2015, 实用化二阶方法