SOLO: Pretraining Billion-Parameter Language Models with Shared-Output Local Learning

📄 arXiv: 2609.35440v1 📥 PDF

作者: Bojian Yin, Shurong Wang, Yuqi Pan, Guoqi Li

分类: cs.LG, cs.DC

发布日期: 2026-09-28

备注: 26 pages, 15 figures, 19 tables. Preprint


💡 一句话要点

提出SOLO以解决大规模语言模型预训练中的更新锁定问题

🎯 匹配领域: 支柱九:具身大模型 (Embodied Foundation Models)

关键词: 局部学习 语言模型 预训练 共享输出 深度学习 反向传播 吞吐量提升

📋 核心要点

  1. 现有的反向传播方法在大型语言模型训练中存在更新锁定问题,导致效率低下。
  2. SOLO方法通过共享最终模块的只读副本,消除了模块间的梯度传递,提升了训练效率。
  3. 实验结果表明,SOLO在内存使用和吞吐量上均有显著提升,达到1.44倍的最佳吞吐量。

📝 摘要(中文)

大型语言模型通常通过反向传播进行训练,这种方法在各层之间存在更新锁定的问题,导致每个模块必须等待梯度通过所有更深层传递。传统的局部学习方法虽然消除了这种锁定,但在亿参数预训练中未能有效扩展。本文提出共享输出局部学习(SOLO),通过使用最终模块的共享只读副本来替代私有读出,从而避免了模块间的梯度传递和更新锁定。SOLO在340M到2B参数的Transformer上进行预训练,使用15B个标记,结果显示其在平均零-shot准确率上与反向传播相差不大,同时在内存和吞吐量上表现出显著提升。

🔬 方法详解

问题定义:本文旨在解决大型语言模型预训练中的更新锁定问题。现有的反向传播方法需要各层等待梯度传递,导致训练效率低下,尤其在亿参数模型中表现明显。

核心思路:论文提出的SOLO方法通过使用共享的只读副本来替代每个模块的私有读出,从而避免了模块间的梯度传递和更新锁定。这一设计使得每个模块能够独立进行预测,同时获得来自最终模块的信息。

技术框架:SOLO的整体架构包括多个模块,每个模块独立进行局部学习,最终模块的输出作为共享副本供其他模块使用。训练过程中,模块之间不再需要等待梯度传递,从而提高了训练效率。

关键创新:SOLO的主要创新在于引入了共享输出机制,解决了传统局部学习方法中私有读出带来的信息孤岛问题。这一设计使得局部学习成为亿参数模型预训练的可行方案。

关键设计:在SOLO中,模块的激活保持时间从O(p)减少到O(1)微批次,释放了内存,允许使用更大的微批次。实验中,SOLO在340M到2B参数的Transformer上进行预训练,使用15B个标记,优化了内存和吞吐量。具体的损失函数和网络结构细节在论文中有详细描述。

🖼️ 关键图片

fig_0
fig_1
fig_2

📊 实验亮点

实验结果显示,SOLO在340M到2B参数的Transformer模型上,平均零-shot准确率与传统反向传播方法相差不大,同时在吞吐量上提升了1.44倍,显著提高了训练效率。内存使用方面,SOLO的设计使得每个模块仅需持有O(1)微批次的激活,释放了大量内存资源。

🎯 应用场景

SOLO方法在大型语言模型的预训练中具有广泛的应用潜力,尤其适用于需要处理海量数据的自然语言处理任务。其高效的训练机制能够加速模型的开发和部署,提升实际应用中的响应速度和准确性。未来,SOLO也可能被应用于其他深度学习领域,推动更大规模模型的训练。

📄 摘要(原文)

Large language models are trained with backpropagation, whose global gradient coordinates all layers but forces each to hold its activations and wait for the gradient to pass back through every deeper layer. Conventional local learning removes this update locking by training each module to predict the target through its own readout, but has not scaled to billion-parameter pretraining. We identify these private readouts as a key weakness, since they leave each module without information from deeper modules. We propose Shared-Output LOcal learning (SOLO), which replaces them with a shared, read-only copy of the final module's readout, the only one trained on the output of the whole network. Taken from the previous step, the copy transmits information from the final module without passing gradients between modules or reintroducing update locking. SOLO approaches backpropagation on Transformers of 340M to 2B parameters pretrained on 15B tokens, staying within one point in average zero-shot accuracy with a perplexity gap that narrows with scale. Readout ablations attribute SOLO's improvement over private readouts to sharing. Without update locking, each of p pipeline stages holds activations for O(1) micro-batches instead of O(p). The freed memory permits larger micro-batches, which reach up to 1.44x the best measured throughput of pipeline backpropagation on the same partition. To our knowledge, SOLO is the first local learning method to show such memory and throughput gains in billion-parameter language-model pretraining. Local learning thus becomes a practical alternative to backpropagation for large-scale pretraining.