本文章由 AI 辅助生成,作学习路线参考以及知识清单。

title: LLM学习计划
date: 2026-07-20 20:19:03
tags: LLM, AIinfra

本文章由 AI 辅助生成,作学习路线参考以及知识清单。

数学

线性代数

  • 矩阵乘法、转置、逆、行列式
  • 矩阵分解:SVD、QR、Cholesky
  • 特征值与特征向量
  • 张量运算:broadcast、reshape、einsum
  • 正交性、投影、子空间

概率与信息论

  • 条件概率、贝叶斯定理
  • 分布:高斯、伯努利、分类分布
  • KL散度、交叉熵、互信息
  • 最大似然估计(MLE)、最大后验估计(MAP)
  • 信息熵、互信息在特征选择中的应用

优化理论

  • SGD、Momentum、Nesterov
  • Adam / AdamW:自适应学习率 + 权重衰减解耦
  • 学习率调度:Warmup、Cosine Decay、OneCycle
  • 凸优化与非凸优化的区别
  • 梯度消失与梯度爆炸
  • 二阶方法:Newton法、L-BFGS(了解即可)

数值计算

  • 浮点表示:FP32、FP16、BF16、FP8(E4M3/E5M2)、INT8、INT4、NF4
  • 混合精度训练:前向FP16/BF16,主权重FP32,loss scaling
  • 数值稳定性:log-sum-exp技巧、softmax溢出处理
  • 量化误差:截断误差、舍入误差、离群值问题

计算图与自动微分

  • 前向传播与反向传播
  • 动态图(PyTorch)vs 静态图(XLA、TorchScript)
  • 计算图优化:常量折叠、算子融合、公共子表达式消除
  • 梯度检查点(Activation Checkpointing):时间换空间

Transformer 核心原理

总体结构

  • 三种范式:Encoder-Decoder(T5)、Decoder-Only(GPT/LLaMA/Qwen)、Encoder-Only(BERT)
  • 现代LLM统一为 Decoder-Only
  • 单层结构:RMSNorm → Attention → Residual → RMSNorm → FFN → Residual
  • Pre-LN vs Post-LN:现代模型统一 Pre-LN,训练更稳定
  • RMSNorm 替代 LayerNorm:去掉均值中心化,减少一次reduce操作
  • FFN:SwiGLU / GeGLU 替代原始 ReLU FFN,门控结构提升表达力
  • Tied Embedding:输入输出共享embedding矩阵,减少参数量
  • 缩放定律(Scaling Law):Chinchilla最优配比(参数:数据 ≈ 1:20 tokens),compute-optimal训练
  • μP(Maximal Update Parametrization):小模型调参迁移到大模型

注意力机制

基本计算

  • QKV投影:$Q=XW_Q,\ K=XW_K,\ V=XW_V$
  • 注意力分数:$\text{Attn}=\text{softmax}(QK^T/\sqrt{d_k})V$
  • Causal Mask:下三角掩码,保证自回归因果性
  • Multi-Head:多头独立计算后concat再投影

位置编码

  • 绝对位置编码:原始Transformer的正弦/余弦编码
  • 相对位置编码:T5的relative bias、ALiBi(线性偏置,无需外推训练)
  • RoPE(旋转位置编码):当前主流,将位置信息编码为旋转矩阵作用于Q和K
  • 长度外推方法:
    • Position Interpolation:线性压缩位置索引
    • NTK-aware Scaling:调整频率基数θ
    • Dynamic NTK:根据序列长度动态调整
    • YaRN:分频段处理,低频外推+高频不变+中频插值
    • LongRoPE:搜索最优缩放因子
    • Self-Extend:分组注意力,近处精细远处粗糙

注意力变体

  • MQA(Multi-Query Attention):所有头共享一组KV,极端压缩
  • GQA(Grouped-Query Attention):分组共享KV,当前主流(LLaMA-3、Qwen3、Mistral)
  • MLA(Multi-head Latent Attention):DeepSeek-V2/V3,将KV压缩到低秩潜空间,推理时解压
  • Mixture of Attentions:不同头使用不同注意力模式(全注意力/稀疏/线性)

FlashAttention

  • 核心思想:IO-aware tiling,避免实例化完整 $N \times N$ 注意力矩阵到HBM
  • FlashAttention-1:分块计算,online softmax
  • FlashAttention-2:更好的并行度(按序列维度分块),减少非矩阵乘操作
  • FlashAttention-3:利用H100 TMA + WGMMA异步流水线,支持FP8注意力
  • FlashDecoding / FlashDecoding++:decode阶段按KV维度分块并行,解决decode阶段GPU利用率低的问题
  • 稀疏注意力:StreamingLLM(sink token + 滑动窗口)、MInference(动态稀疏模式选择)

KV Cache

基本原理

  • 自回归生成时,历史token的K、V不变,缓存避免重复计算
  • 显存占用:$2 \times n{layers} \times n{kv_heads} \times d_{head} \times seq_len \times batch_size \times bytes_per_element$
  • 长序列下KV Cache是推理显存的主要瓶颈

结构优化

  • GQA / MQA:减少KV头数
  • MLA:KV压缩到低秩潜空间,存储量降低数倍
  • 滑动窗口注意力:只保留最近W个token的KV(Mistral)

量化与压缩

  • KV Cache量化:INT8 / INT4 / FP8
  • 驱逐策略:H2O(Heavy Hitter Oracle,保留高频注意力token)、Scissorhands、SnapKV
  • 分层驱逐:不同层使用不同压缩率

管理与复用

  • PagedAttention(vLLM):KV Cache按页管理,消除显存碎片,提升batch size
  • RadixAttention(SGLang):前缀树管理KV Cache,自动复用公共前缀
  • Prefix Caching / Prompt Caching:相同system prompt或前缀自动命中
  • Disaggregated KV Cache:KV存储与计算节点分离(Mooncake、DistServe)
  • KV Cache offloading:卸载到CPU内存/SSD(FlexGen、InfiniGen)

量化

训练后量化(PTQ)

  • GPTQ:逐层二阶信息(Hessian)量化,逐列更新补偿误差
  • AWQ:激活感知,识别并保护显著权重通道
  • SmoothQuant:将激活离群值通过缩放因子迁移到权重侧,使两者都易量化
  • GGUF格式(llama.cpp):Q4_K_M、Q5_K_S等混合精度方案,按张量分配不同bit

量化感知训练(QAT)

  • 训练时插入fake quantize节点,模拟量化误差
  • 模型学习补偿量化带来的精度损失

精度格式与适用场景

  • FP16 / BF16:训练主流,BF16动态范围更大
  • FP8(E4M3用于前向,E5M2用于反向):H100+原生支持
  • INT8(W8A8):SmoothQuant路线,推理部署
  • INT4(W4A16):GPTQ/AWQ路线,推理主流
  • NF4:QLoRA使用的4bit NormalFloat,信息论最优

MoE

基本结构

  • Router(门控网络):线性层 + softmax,输出专家权重
  • Top-k选择:每个token选k个专家(通常k=2)
  • 加权求和:选中专家输出按路由权重加权
  • FFN替换:每个专家是一个独立FFN

训练关键问题

  • 负载均衡:Auxiliary Loss(鼓励均匀分配)、Expert Choice Routing(专家选token)、Z-loss(稳定router logits)
  • 路由坍缩:所有token涌向少数专家,需正则化
  • DeepSeek MoE:细粒度专家切分(更多更小专家)、共享专家(所有token必经)、无损负载均衡

并行与推理

  • Expert Parallelism(EP):专家分布到不同GPU,All-to-All通信交换token
  • 推理优化:Expert offloading(冷专家放CPU)、动态专家激活、专家缓存
  • 与投机解码结合:MoE-Spec,利用专家路由相关性分配draft预算

微调

全参数微调

  • 显存需求:模型参数 + 梯度 + 优化器状态(Adam约16×参数量bytes)
  • 需配合ZeRO / FSDP / TP降低单卡显存

参数高效微调(PEFT)

  • LoRA:$\Delta W = BA$,$B \in \mathbb{R}^{d \times r},\ A \in \mathbb{R}^{r \times k}$,冻结原权重,只训练低秩矩阵
  • QLoRA:基座模型4bit量化(NF4)+ LoRA适配器
  • DoRA:权重分解为方向(direction)和幅度(magnitude),分别适配
  • AdaLoRA / rsLoRA:自适应秩分配,重要层分配更高秩
  • GaLore:梯度低秩投影,近似全参数微调效果,显存接近LoRA

工程框架

  • LLaMA-Factory:一站式微调,支持LoRA/QLoRA/全参/DPO/PPO
  • Axolotl:配置驱动,支持多种训练范式
  • Unsloth:2×速度提升,内存减半

数据工程

  • 指令数据构造:Self-Instruct、Evol-Instruct、Magpie
  • 多轮对话格式:ChatML、Llama-3格式
  • 数据质量过滤:困惑度过滤、规则过滤、模型打分
  • 课程学习:由易到难排列训练数据

投机解码

基本范式

  • Draft模型(小/快)生成k个候选token
  • Target模型(大/慢)一次前向并行验证k个token
  • 逐token接受/拒绝:接受则保留,拒绝则从target分布重采样
  • 关键指标:接受率(acceptance rate)、加速比(speedup ratio)

主要变体

  • Medusa:在target模型上加多个预测头,并行预测未来多位置,无需独立draft模型
  • EAGLE / EAGLE-2:基于特征级(hidden state)draft,而非token级,接受率显著提升
  • Lookahead Decoding:Jacobi迭代,将自回归转化为并行不动点求解
  • Self-Speculative / LayerSkip:用模型自身浅层/早退输出做draft
  • MoE-Spec:针对MoE模型,利用专家路由相关性分配draft计算预算

工程落地

  • vLLM:内置speculative decoding,支持多种draft策略
  • SGLang:支持EAGLE等
  • 选择依据:draft模型质量、额外显存开销、batch size影响

训练

预训练

数据

  • 数据来源:Common Crawl、书籍、代码、学术论文、百科
  • 清洗:HTML标签去除、语言检测、编码统一
  • 去重:MinHash + LSH近似去重、精确去重
  • 质量过滤:困惑度过滤、分类器打分、规则过滤
  • 数据配比:多语言、多领域配比实验
  • 课程学习:先易后难、先短后长

并行策略

  • Data Parallelism(DP):数据切分,梯度AllReduce
  • Tensor Parallelism(TP):单层权重按列/行切分,节点内通信
  • Pipeline Parallelism(PP):不同层放不同GPU,micro-batch流水线
  • Sequence Parallelism(SP):LayerNorm/Dropout沿序列维度切分
  • Expert Parallelism(EP):MoE专家分布到不同GPU
  • Context Parallelism(CP):长序列切分到多设备(Ring Attention)
  • 组合使用:3D并行(DP+TP+PP)、4D/5D并行

训练框架

  • Megatron-Core:NVIDIA官方,TP/PP/SP/EP原生支持
  • DeepSpeed ZeRO-1/2/3:优化器状态/梯度/参数分片
  • FSDP2(PyTorch原生):与Megatron-Core融合的Megatron-FSDP
  • 通信库:NCCL、Gloo

训练稳定性

  • Loss spike:数据异常、学习率过高、数值溢出
  • 梯度裁剪:global norm clipping
  • Warmup:线性warmup + cosine decay
  • 混合精度:BF16前向/反向 + FP32主权重
  • Activation Checkpointing:重计算中间激活,省显存

容错与效率

  • 弹性训练:节点故障自动恢复
  • 异步Checkpoint:后台写入,不阻塞训练
  • 增量Checkpoint:只保存变化部分
  • 计算通信重叠:AllReduce与下一层前向并行

后训练(Post-Training)

SFT(监督微调)

  • 指令跟随数据:单轮/多轮对话
  • 格式:ChatML、Llama-3 template
  • 数据量:通常数万到数十万条高质量数据
  • 训练:1-3 epoch,较小学习率

偏好对齐

  • RLHF:训练Reward Model → PPO优化策略
  • DPO:直接从偏好对优化,无需显式RM
  • ORPO: odds ratio偏好优化
  • SimPO:简化版DPO,去掉参考模型
  • KTO:只需好/坏标签,无需成对偏好

推理强化学习

  • GRPO(Group Relative Policy Optimization):DeepSeek-R1使用,组内相对奖励,无需RM
  • DAPO / Dr.GRPO:去除长度偏差
  • Rule-based RL:数学/代码场景用可验证奖励(答案正确性)替代人类标注
  • 长CoT训练:鼓励模型生成完整推理链
  • Test-time Compute Scaling:推理时增加计算量换取更好结果

数据飞轮

  • Self-play:模型自我对弈生成训练数据
  • Self-improvement:模型生成→过滤→再训练
  • RLAIF:AI反馈替代人类反馈
  • 迭代蒸馏:大模型输出蒸馏到小模型

推理与部署

并行

  • Tensor Parallelism(TP):单层权重按列/行切分到多GPU,AllReduce同步
  • Pipeline Parallelism(PP):不同层放不同GPU,micro-batch流水线
  • Expert Parallelism(EP):MoE专家分布到不同GPU,All-to-All通信
  • Sequence / Context Parallelism:长序列切分到多设备(Ring Attention、Striped Attention)
  • Data Parallelism(DP):多副本并行,推理侧用于扩吞吐

vLLM

  • PagedAttention:KV Cache按页(block)管理,类似OS虚拟内存,消除显存碎片
  • Continuous Batching:请求级动态调度,新请求随时插入,完成请求立即释放
  • Chunked Prefill:将长prefill拆成多个chunk与decode交错执行,降低TTFT
  • Automatic Prefix Caching:相同前缀(system prompt等)自动复用KV Cache
  • 量化支持:AWQ、GPTQ、FP8、INT8
  • 并行:TP、PP
  • Speculative Decoding:内置支持,可配置draft模型或策略
  • 多模态:VLM推理支持(图像、视频输入)
  • Disaggregated Prefill/Decode:prefill与decode分离到不同实例(实验性)
  • 结构化输出:JSON Schema约束解码(通过集成outlines/xgrammar)

SGLang

  • RadixAttention:前缀树(Radix Tree)管理KV Cache,自动复用任意公共前缀
  • 结构化生成:压缩有限状态机(Constrained FSM),支持JSON Schema / Regex / EBNF约束解码,性能优于逐token mask
  • 编程接口:前端DSL,支持多轮、分支、并行调用、fork/join
  • 多模态:图像、视频输入
  • 与vLLM对比:SGLang在前缀复用和结构化输出场景更优;vLLM在通用并发、生态兼容性、社区活跃度上更强

其他推理引擎

  • TensorRT-LLM:NVIDIA极致性能,编译优化,In-flight Batching,FP8/INT4 kernel,与NVIDIA生态深度绑定
  • llama.cpp / Ollama:端侧/CPU推理,GGUF量化格式,Apple Metal / Vulkan后端
  • MLC-LLM:基于TVM编译,跨平台(Web/iOS/Android)
  • DeepSpeed-Inference:ZeRO-Inference,适合超大模型多卡推理

推理优化技术

  • CUDA Graph:将多次kernel launch录制为一次graph launch,消除CPU开销
  • 算子融合:Attention + LayerNorm + FFN融合为单个kernel
  • KV Cache量化:FP8 / INT8存储KV
  • 动态batch调度:SLA-aware、优先级队列、公平性
  • Prefill-Decode分离架构:DistServe、Splitwise、Mooncake,prefill和decode分别部署、独立扩缩
  • KV-aware routing:按KV Cache命中情况路由请求到对应实例
  • 模型编译:torch.compile、TensorRT、XLA图级优化

AI Infra

硬件

  • GPU代际:A100 → H100/H200 → B200/GB200(Blackwell)
  • 显存:HBM2e → HBM3 → HBM3e,容量80GB → 141GB → 192GB
  • 节点内互联:NVLink(900GB/s → 1.8TB/s)、NVSwitch全互联
  • 节点间互联:InfiniBand NDR/XDR(400/800 Gbps)、RoCE v2(RDMA over Ethernet)
  • 新标准:Ultra Ethernet Consortium(UEC),AI专用以太网
  • 竞品:AMD MI300X/MI400、Intel Gaudi 3、Google TPU v6e/v7

网络与拓扑

  • Fat-Tree:经典三层Clos网络
  • Rail-Optimized:同轨GPU优先通信,减少跨交换机流量
  • Dragonfly:高基数低直径,适合All-to-All
  • 集合通信原语:AllReduce、AllGather、ReduceScatter、All-to-All
  • 通信优化:梯度压缩、异步通信、计算通信重叠

集群调度与编排

  • Kubernetes + GPU Operator / MIG(Multi-Instance GPU)
  • Slurm:HPC传统调度器
  • Ray:分布式计算框架,适合推理服务
  • Gang Scheduling:保证分布式训练所有Pod同时调度
  • 弹性伸缩:按队列深度自动扩缩推理实例
  • 可观测性:DCGM(GPU指标)、Prometheus、Grafana

存储与数据管道

  • 并行文件系统:Lustre、GPFS、WekaFS
  • 训练数据管道:WebDataset、Mosaic StreamingDataset
  • Checkpoint存储:异步写入、增量保存、对象存储(S3/GCS)
  • 模型仓库:HuggingFace Hub、Model Registry

编译与Kernel

  • CUDA / cuDNN / cuBLAS / NCCL:NVIDIA基础库
  • Triton:Python写GPU kernel,自动调优
  • CUTLASS / cuTe:模板化GEMM,极致性能
  • torch.compile:PyTorch 2.x图级编译优化
  • Transformer Engine(NVIDIA):FP8训练/推理自动管理
  • XLA:TensorFlow/JAX编译器

架构前沿

线性注意力与状态空间模型

  • Mamba / Mamba-2:选择性状态空间模型,线性复杂度
  • RWKV-7:RNN + 线性注意力混合
  • DeltaNet:基于delta rule的线性注意力
  • Gated Linear Attention(GLA):门控线性注意力

Hybrid架构

  • Jamba(AI21):Mamba层 + Transformer层交替
  • Nemotron-H(NVIDIA):混合注意力 + Mamba
  • 动机:兼顾长序列效率与Transformer的表达力

非自回归与Diffusion LLM

  • MDLM、SEDD:离散扩散模型做文本生成
  • 优势:并行生成、可控性
  • 劣势:质量仍落后自回归、推理步数多

Mixture of Depths(MoD)

  • 动态跳层:按token难度决定是否经过某层
  • 简单token跳过深层计算,节省FLOPs

多模态原生

  • 统一Tokenizer:图像/音频/视频/3D统一为离散token
  • Any-to-Any生成:任意模态输入→任意模态输出
  • Vision Encoder:ViT、SigLIP、InternViT
  • 架构:Vision Encoder + Projector + LLM

小模型高效化

  • 知识蒸馏:大模型logits/特征蒸馏到小模型
  • 数据工程:高质量合成数据 > 海量低质数据
  • 代表:Phi-4、Gemma-3、Qwen3-0.6B/1.7B

Reasoning模型

  • o1/R1范式:长CoT + RL训练
  • Test-time Compute Scaling:推理时增加计算量(更多采样、更长思考)
  • 过程奖励模型(PRM):对推理步骤逐步打分
  • 搜索增强推理:MCTS、Best-of-N、Self-Consistency

Agent 与应用

Agent框架

  • OpenHands(原OpenDevin):CodeAct范式,代码即行动
  • LangGraph:基于图的Agent编排
  • AutoGen(Microsoft):多Agent对话
  • CrewAI:角色分工协作

工具调用与协议

  • Function Calling:模型输出结构化工具调用
  • MCP(Model Context Protocol):Anthropic提出的工具/资源标准协议
  • GUI-Agent:操作图形界面(点击、输入、滚动)
  • Code Interpreter:沙箱执行代码

RAG

  • 向量数据库:Milvus、Pinecone、Weaviate、Chroma
  • 混合检索:稠密向量 + 稀疏BM25
  • Reranker:Cross-Encoder重排序
  • Graph RAG:知识图谱增强检索
  • Agentic RAG:Agent自主决定何时检索、检索什么、如何组合

上下文工程(Context Engineering)

  • 上下文窗口管理:压缩、摘要、分层
  • 长上下文利用:128K–10M token
  • 记忆系统:短期(对话内)/ 长期(跨会话)/ 外部(向量库)
  • Prompt Engineering → Context Engineering 的范式转变

多Agent协作

  • 角色分工:Planner、Executor、Critic
  • 通信协议:消息传递、共享黑板
  • HITL(Human In The Loop):关键节点人工介入
  • 编排模式:顺序、并行、条件分支、循环

评估与安全

评估基准

  • 知识:MMLU、MMLU-Pro、C-Eval
  • 推理:GPQA、ARC-Challenge、BBH
  • 代码:HumanEval、MBPP、SWE-bench
  • 数学:MATH、GSM8K、AIME
  • 综合:Arena Elo(人类盲评)、MT-Bench
  • 长文本:RULER、Needle-in-Haystack、LongBench
  • 指令跟随:IFEval、FollowBench

安全

  • Red Teaming:对抗性提示攻击
  • Jailbreak防护:系统提示保护、输出过滤
  • 内容安全:分类器过滤、Constitutional AI
  • Watermarking:生成文本水印,溯源检测
  • 隐私:训练数据记忆、差分隐私

可解释性

  • Attention可视化:注意力权重热力图
  • Probing:探针实验,检测中间层编码的信息
  • Mechanistic Interpretability:电路分析、因果干预
  • SAE(Sparse Autoencoder):分解激活为可解释特征
  • Logit Lens / Tuned Lens:逐层预测解码