封面图

系列:AI 论文精读与复现训练营
日期:2026-08-16
适合读者:研究生、LLM 训练入门研究者、有工程背景的 AI 读者
检索日期:2026-08-16

摘要

Efficient Training 不是“把训练做便宜”的工程细节,而是大模型研究里的资源分配问题:同样 token budget、同样硬件和同样评测下,显存、通信、重计算、数值稳定性和最终能力如何交换?LoRA/QLoRA 让大模型微调进入普通实验室;ZeRO、activation checkpointing、FlashAttention、Megatron/FSDP 把训练状态和激活显存拆成可管理模块;MoE 试图把总参数容量和每 token 计算成本解耦;GaLore、Q-GaLore、Muon 等优化器方向则重新讨论 optimizer states、更新子空间和大规模训练稳定性。

本文给出一条论文精读路线:先学会写“训练资源账本”,再按 PEFT、量化微调、稀疏专家、内存并行、优化器五条线读代表论文,最后设计小规模复现实验,验证一种效率方法到底省掉了什么、付出了什么、结论能否站住。

目录

  1. 为什么这个主题重要
  2. 核心阅读方法
  3. 代表论文路线图
  4. 方法与实验对比表
  5. 复现建议
  6. 常见误区
  7. 适合研究生继续做的选题
  8. 总结与参考资料

为什么这个主题重要

大模型训练瓶颈不是单一的“GPU 不够”。冻结参数可以减少梯度和优化器状态,但不一定减少激活显存;量化权重能省模型内存,却可能引入数值误差和 kernel 限制;checkpointing 用额外前向重计算换显存;ZeRO/FSDP 把参数、梯度和优化器状态分片,但引入通信;MoE 增加总容量,却带来 router、load balancing、expert parallelism 和稳定性问题;优化器改进可能减少状态或提升收敛,但比较时必须匹配学习率、batch、warmup、训练 token 和硬件。

这类论文对研究生尤其有训练价值。第一,你可以在 1B 以下模型、公开数据和单机环境里做出可解释复现。第二,它迫使你同时报告 peak memory、tokens/sec、wall-clock、loss curve、最终指标和失败率,而不是只挑一个好看的数字。第三,效率方法往往有明确边界条件:某些任务有效、某些规模失效、某些实现很快但不稳定,这些边界就是可发表的研究问题。

2025-2026 年的模型技术报告也说明,训练效率已经进入主线叙事。DeepSeek-V3、Qwen3、Kimi K2、Llama 4 等公开资料都把 MoE、FP8、低秩结构、专家并行、长上下文训练和优化器稳定性写进核心设计;PyTorch、DeepSpeed、Megatron Core 文档也持续更新 activation checkpointing、ZeRO、parallelism 和 MoE 训练能力。读现代 LLM 报告时,如果忽略 efficient training,就很难理解模型到底是如何被训练出来的。

核心阅读方法

读 Efficient Training 论文,第一步是画资源账本。至少拆成六项:parameters、gradients、optimizer states、activations、communication、recompute。LoRA 主要减少可训练参数、梯度和优化器状态;QLoRA 进一步压缩 frozen base weights;ZeRO/FSDP 分片 training states;activation checkpointing 减少保存的激活;FlashAttention 减少 attention 中间量和 HBM IO;MoE 降低每 token 激活计算相对总容量的成本;GaLore 类方法压缩梯度统计或优化器状态;Muon 关注更新几何和扩展到大规模训练的稳定性。

第二步是区分训练阶段。预训练、continued pretraining、SFT、DPO/RLHF、领域微调和 adapter 训练不是同一个问题。LoRA/QLoRA 很适合下游适配,但不等于低成本预训练;GaLore 试图保留 full-parameter learning;MoE 通常需要从架构和系统层面一起设计;checkpointing 和并行系统则横跨多个阶段。

第三步是检查证据强度。可信论文应尽量固定模型、数据、token budget、硬件、评测和随机种子,只改变效率方法。只报告 trainable parameters、不报告 activation;只报告 peak memory、不报告 step time;只给最终 benchmark、不展示 loss curve;把不同 batch 或不同训练 token 的结果放在一张表里,都是需要警惕的信号。

Efficient Training 阅读路线图

代表论文路线图

1. LoRA / PEFT:低秩更新如何改变微调

LoRA 冻结预训练权重,在 Transformer 层中加入低秩矩阵更新,把全量微调近似为低秩子空间中的适配。精读时要抓住两点:为什么 adaptation update 可能低秩,以及 LoRA 应该插入哪些模块。复现时不要只记“参数少”,要系统改变 rank、alpha、target modules、dropout、bias、merge/unmerge,并与 full fine-tuning baseline 在同一 token budget 下比较。

2024 之后的 DoRA、LoRA+、RSLoRA、LoftQ、aLoRA 等变体可以作为第二层阅读。DoRA 把权重更新拆成 magnitude 和 direction;LoRA+ 用不同学习率更新两个 adapter 矩阵;PEFT 文档则显示这些方法已经成为可组合工具。读变体论文时,重点不是“新方法一定更强”,而是找清楚它修复了 LoRA 的哪一个边界条件。

2. QLoRA:量化权重上的可训练适配

QLoRA 的关键是组合方案:NF4 量化、double quantization、paged optimizers,以及在量化 base model 上训练 LoRA adapter。它把冻结模型权重压低到 4-bit 存储,同时保留 adapter 的可训练性。精读时要画清楚哪些张量被量化、哪些张量可训练、梯度如何流动、optimizer states 存在哪里。复现时必须记录 bitsandbytes、transformers、PEFT、CUDA、GPU 型号、compute dtype 和是否启用 gradient checkpointing,因为这些实现细节会直接影响稳定性和速度。

3. Memory / Parallelism:ZeRO、Checkpointing、FlashAttention、Megatron

ZeRO 的核心是去掉数据并行中的冗余 training states。DeepSpeed 文档把它拆成 Stage 1 optimizer states、Stage 2 gradients、Stage 3 parameters,并提供 CPU/NVMe offload。读 ZeRO 时,要把显存节省和 all-gather、reduce-scatter、offload 带宽一起看。

Activation checkpointing 用重计算换显存。PyTorch 文档明确指出,反向传播时会重新执行部分 forward;若涉及 dropout 和 RNG state,还要注意 determinism 与性能开销。FlashAttention 则通过 IO-aware attention 减少中间矩阵和 HBM 访问,对长序列训练尤其关键。Megatron-LM/Megatron Core 提供 tensor、pipeline、data、expert、context parallelism 等训练积木。系统论文和文档的读法,是把每个开关翻译成“哪类张量被切分、哪类通信被引入、哪类 kernel 被融合”。

4. MoE:总容量与激活计算的解耦

GShard 和 Switch Transformer 是 MoE 路线的经典起点。GShard 展示条件计算和自动分片;Switch Transformer 用 top-1 routing 简化专家选择,并把 load balancing、capacity factor、bfloat16 稳定性放在核心位置。之后 Mixtral、DeepSeekMoE、DeepSeek-V2/V3、Qwen3、Kimi K2、Llama 4 等报告把 MoE 推到开放模型主流。

读 MoE 报告时,不能只看 total parameters。必须同时记录 activated parameters、experts per token、shared experts、router、load balancing loss、expert parallelism、token dropping 和通信。模型参数、token 数、GPU hours、benchmark 和仓库状态都容易变化,正式引用前应回到官方模型卡和技术报告重新核对。

5. Optimizer:AdamW 之后的内存与稳定性

AdamW 是新优化器的强 baseline,因为它把 weight decay 从 Adam 更新中解耦。GaLore 的问题设定是 optimizer state memory:它不是冻结权重,而是在低秩梯度投影空间中维护优化器状态,试图保留 full-parameter learning。Q-GaLore 进一步结合量化和 layer-adaptive low-rank gradients。Muon 及 Kimi K2 报告则把 optimizer 扩展性和训练稳定性重新推到中心。

这里最容易误判贡献:优化器效果往往混合了算法、实现、学习率、batch、数据和硬件。读论文时要坚持同一模型、同一数据、独立调参、完整 loss curve 和失败率,否则很难判断是优化器更好,还是 baseline 没调好。

方法与实验对比表

分支 代表资料 主要节省对象 主要代价 精读检查
LoRA / PEFT LoRA, DoRA, LoRA+, PEFT trainable params、gradients、optimizer states 可能限制更新子空间 rank、target modules、同预算 full baseline
QLoRA QLoRA, PEFT quantization frozen base weights 显存 量化误差、kernel/版本限制 NF4、compute dtype、paged optimizer
ZeRO / FSDP ZeRO, DeepSpeed, PyTorch FSDP 参数、梯度、优化器状态冗余 通信和 offload 成本 stage、bucket、batch、网络带宽
Checkpointing PyTorch checkpointing activations 额外重计算、RNG 复杂度 粒度、step time、determinism
FlashAttention FlashAttention, Megatron attention 中间量、HBM IO kernel 和硬件依赖 sequence length、dtype、端到端吞吐
MoE GShard, Switch, Mixtral, DeepSeek, Qwen3, Kimi K2, Llama 4 每 token 计算相对总容量 路由、通信、稳定性 active vs total params、expert load
Optimizer AdamW, GaLore, Q-GaLore, Muon optimizer states 或收敛步数 超参敏感、归因困难 调参预算、loss curve、失败率

复现建议

第一,复现 LoRA / QLoRA 微调。选择一个 1B-8B 开源模型和小型指令数据集,比较 full fine-tune、LoRA、QLoRA。固定训练 tokens、batch、评测集和 seed,报告 peak memory、tokens/sec、训练时间、loss curve、最终指标和 checkpoint size。

第二,复现 activation checkpointing trade-off。打开/关闭 checkpointing,改变 checkpoint 粒度,记录最大显存、step time、吞吐和 loss。若模型包含 dropout,要写清楚 RNG 和 determinism 设置。

第三,做 ZeRO/FSDP 小实验。多卡环境下比较 data parallel、ZeRO-1/2/3 或 FSDP;单卡可尝试 offload,但不要把单卡 offload 结论外推到高速互联集群。

第四,做 toy MoE。把小 Transformer 的 FFN 换成 4 或 8 个专家,比较 top-1/top-2 routing、shared expert、load balancing loss。报告 expert load entropy、dropped token rate、active FLOPs 和 loss curve。

第五,做 optimizer ablation。以 AdamW 为强 baseline,再加入 Adafactor、GaLore 或 Muon。每个优化器都要独立调学习率和 weight decay,并报告失败率。负结果也要写,因为效率论文的边界条件往往比正结果更有价值。

常见误区

  1. 只看 trainable parameters。LoRA 参数少,但 activation memory、attention 中间量和 batch size 仍可能决定能否训练。
  2. 把 total parameters 当成训练成本。MoE 必须报告 active parameters、experts per token、router 和通信。
  3. 只报告 peak memory。省显存但 step time 翻倍、最终 loss 变差或训练不稳定,不一定更有效。
  4. 不匹配 token budget 和调参预算。效率方法常常改变最优学习率、warmup、rank、batch 和 precision。
  5. 忽略版本。PEFT、bitsandbytes、PyTorch、DeepSpeed、Megatron、CUDA kernel、官方模型卡和技术报告都在持续变化。涉及参数量、GPU hours、benchmark、仓库状态的内容,正式发布前应标注检索日期;不确定项写“待人工核验”。

适合研究生继续做的选题

  1. LoRA rank scaling:比较 0.5B、1B、3B 模型上的 rank、target modules 和数据规模。
  2. QLoRA 稳定性审计:比较 NF4、FP4、BF16/FP16 compute dtype、paged optimizer 和 checkpointing。
  3. Checkpointing 策略搜索:在固定显存预算下自动选择 checkpoint 节点。
  4. 小规模 MoE 路由机制:研究 shared expert、load balancing loss 和 capacity factor。
  5. Optimizer state 压缩复现:比较 AdamW、Adafactor、GaLore、Q-GaLore 在 SFT 与 continued pretraining 中的差异。
  6. 效率报告模板:为一篇 LLM 训练论文补写显存、吞吐、通信、失败率和复现边界。

总结

Efficient Training 论文的正确读法,是把“更省”翻译成可审计的成本、质量和稳定性三角。LoRA/QLoRA 降低微调门槛,ZeRO/checkpointing/FlashAttention/Megatron 把训练系统拆成可组合模块,MoE 改变容量和激活计算的关系,optimizer 方向继续挑战 AdamW 的内存和收敛边界。科研新人最该训练的能力,是复现一张资源账本:同样模型、数据和预算下,省掉了什么,付出了什么,结论还能不能站住。

参考资料

检索日期:2026-08-16。以下链接优先使用论文页、官方项目页、官方文档、GitHub、JMLR、ML Anthology、Hugging Face paper page 等一手或接近一手资料。模型参数、训练 token、GPU hours、benchmark、仓库状态、文档版本和 API 行为可能变化,投稿或发布前请重新核对。

  1. LoRA: Low-Rank Adaptation of Large Language Models, ICLR 2022 / ML Anthology: https://mlanthology.org/iclr/2022/hu2022iclr-lora/
  2. QLoRA: Efficient Finetuning of Quantized LLMs, arXiv 2305.14314: https://arxiv.org/abs/2305.14314
  3. QLoRA official GitHub repository: https://github.com/artidoro/qlora
  4. Hugging Face PEFT documentation: https://huggingface.co/docs/peft/en/index
  5. Hugging Face PEFT LoRA reference: https://huggingface.co/docs/peft/main/en/package_reference/lora
  6. Hugging Face PEFT quantization guide: https://github.com/huggingface/peft/blob/main/docs/source/developer_guides/quantization.md
  7. DoRA: Weight-Decomposed Low-Rank Adaptation, NVIDIA Research: https://research.nvidia.com/labs/lpr/publication/liu2024dora/
  8. LoRA+: Efficient Low Rank Adaptation of Large Models, arXiv 2402.12354: https://arxiv.org/abs/2402.12354
  9. Decoupled Weight Decay Regularization, ICLR 2019 / ML Anthology: https://mlanthology.org/iclr/2019/loshchilov2019iclr-decoupled/
  10. ZeRO: Memory Optimizations Toward Training Trillion Parameter Models, arXiv 1910.02054: https://arxiv.org/abs/1910.02054
  11. DeepSpeed ZeRO tutorial: https://github.com/microsoft/DeepSpeed/blob/master/docs/_tutorials/zero.md
  12. DeepSpeed large-model training guide: https://www.deepspeed.ai/tutorials/large-models-w-deepspeed/
  13. DeepSpeed ZeRO++ tutorial: https://www.deepspeed.ai/tutorials/zeropp/
  14. PyTorch activation checkpointing blog: https://pytorch.org/blog/activation-checkpointing-techniques/
  15. torch.utils.checkpoint documentation: https://docs.pytorch.org/docs/stable/checkpoint
  16. FlashAttention: Fast and Memory-Efficient Exact Attention with IO-Awareness, arXiv 2205.14135: https://arxiv.org/abs/2205.14135
  17. Megatron-LM / Megatron Core GitHub repository: https://github.com/NVIDIA/Megatron-LM
  18. GShard, ICLR 2021 / ML Anthology: https://mlanthology.org/iclr/2021/lepikhin2021iclr-gshard/
  19. Switch Transformers, JMLR 2022: https://www.jmlr.org/beta/papers/v23/21-0998.html
  20. Mixtral of Experts, Mistral AI: https://mistral.ai/news/mixtral-of-experts/
  21. DeepSeekMoE official repository: https://github.com/deepseek-ai/DeepSeek-MoE
  22. DeepSeek-V2 official repository: https://github.com/deepseek-ai/deepseek-v2
  23. DeepSeek-V3 official repository and technical report link: https://github.com/deepseek-ai/DeepSeek-V3
  24. Qwen3 official repository and technical report citation: https://github.com/QwenLM/Qwen3
  25. Kimi K2 official repository and technical report: https://github.com/MoonshotAI/Kimi-K2
  26. Muon is Scalable for LLM Training, arXiv 2502.16982: https://arxiv.org/abs/2502.16982
  27. Llama 4 model card, Meta repository: https://github.com/meta-llama/llama-models/blob/main/models/llama4/MODEL_CARD.md
  28. Llama 4 official blog: https://ai.meta.com/blog/llama-4-multimodal-intelligence/
  29. GaLore: Memory-Efficient LLM Training by Gradient Low-Rank Projection, arXiv 2403.03507: https://arxiv.org/abs/2403.03507
  30. Q-GaLore, arXiv 2407.08296: https://arxiv.org/abs/2407.08296
  31. Scalable Parameter and Memory Efficient Pretraining for LLM, arXiv 2505.22922: https://arxiv.org/abs/2505.22922
  32. EfficientLLM: Efficiency in Large Language Models, arXiv 2505.13840: https://arxiv.org/abs/2505.13840
  33. Parameter-efficient fine-tuning in large language models: a survey of methodologies, Artificial Intelligence Review 2025: https://link.springer.com/article/10.1007/s10462-025-11236-4
  34. A Survey on Mixture of Experts in Large Language Models, official repository: https://github.com/withinmiaov/A-Survey-on-Mixture-of-Experts-in-LLMs