梯度检查点

搜索文档
无损减少80%激活值内存,提升5倍训练序列长度,仅需两行代码
机器之心· 2025-06-23 15:44
本文的第一作者罗琪竣、第二作者李梦琦为香港中文大学(深圳)计算机科学博士生,本文在上海交通大学赵磊老师、香港中文大学(深圳)李肖老师的指 导下完成。 长序列训练对于模型的长序列推理等能力至关重要。随着序列长度增加,训练所需储存的激活值快速增加,占据训练的大部分内存。即便使用梯度检查点 (gradient checkpointing)方法,激活值依然占据大量内存,限制训练所能使用的序列长度。 来自港中文(深圳)和上海交通大学的团队提出 StreamBP 算法。通过对链式法则进行线性分解和分步计算,StreamBP 将大语言模型训练所需的激活值 内存(logits 和 layer activation)降低至梯度检查点(gradient checkpointing)的 20% 左右。 论文标题:StreamBP: Memory-Efficient Exact Backpropagation for Long Sequence Training of LLMs 在相同内存限制下,StreamBP 最大序列长度为梯度检查点的 2.8-5.5 倍。在相同序列长度下,StreamBP 的速度和梯度检查点接近甚至更快。 S ...
AI芯片的双刃剑
半导体行业观察· 2025-02-28 11:08
如果您希望可以时常见面,欢迎标星收藏哦~ 来源:内容编译自semiwiki,谢谢。 与传统软件编程不同,人工智能软件建模代表着一种变革性的范式转变,重塑了方法论,重新定义了 执行过程,并推动了人工智能处理器要求的重大进步。 软件编程与人工智能建模:根本性的范式转变 传统软件编程 传统软件编程是围绕编写明确的指令(代码)来完成特定任务而构建的。程序员通过定义一组严格的 规则来建立软件的行为,这使得这种方法非常适合可预测性和可靠性至关重要的确定性场景。随着任 务变得越来越复杂,代码库的大小和复杂性通常会增加。 当需要更新或更改时,程序员必须手动修改代码——根据需要添加、更改或删除指令。此过程可以精 确控制软件,但会限制其在没有程序员直接干预的情况下动态适应不可预见的情况的能力。 AI 软件建模 AI 软件建模代表了解决问题方法的根本性转变。AI 软件建模使系统能够通过迭代训练从数据中学习 模式。在训练期间,AI 分析大量数据集以识别行为,然后在推理阶段应用这些知识来执行翻译、财 务分析、医疗诊断和工业优化等任务。 人工智能利用概率推理根据概率做出预测和决策,从而能够处理不确定性并适应变化。通过不断使用 新数据进行 ...