中文

小批量训练语言模型: 当基础SGD有效时,为何梯度累积是浪费的

机器学习 2025-12-17 v4

摘要

传统观念认为小批量大小会导致语言模型预训练和微调不稳定,动机是梯度累积,这以优化器步数与批量大小比例增加进行权衡。虽然通常会减小小批量大小的学习率,但其他超参数常常保持固定。本文我们重新审视从批量大小为一的小批量,提出一种缩放Adam超参数以适应小批量的规则。特别是,我们提出要以token数为基准固定第二时刻的衰减率,而非在批量大小之间固定其值。我们发现小批量(1)训练稳定,(2)对超参数选择更具鲁棒性,(3)达到与更大批量相当或更好的每FLOP性能,(4)显著启用基础SGD进行语言模型训练,即使无动量、无需存储优化器状态也可实现稳定训练。基于这些结果,我们提供了选择批量大小和设置优化器超参数的实用建议。我们进一步建议除非在多个设备上进行多个模型副本的训练,否则不要使用梯度累积。最后,我们表明,小批量结合小状态大小的优化器可在保持类似LoRA内存占用的同时,提供完整微调的性能优势。

关键词

引用

@article{arxiv.2507.07101,
  title  = {Small Batch Size Training for Language Models: When Vanilla SGD Works, and Why Gradient Accumulation Is Wasteful},
  author = {Martin Marek and Sanae Lotfi and Aditya Somasundaram and Andrew Gordon Wilson and Micah Goldblum},
  journal= {arXiv preprint arXiv:2507.07101},
  year   = {2025}
}

备注

NeurIPS 2025. Code available at: https://github.com/martin-marek/batch-size