- 简介当前针对大语言模型的PEFT方法可以实现高质量、高效训练或可扩展的推理服务,但不能同时实现这三者。为了解决这一局限性,我们研究了稀疏微调,并观察到泛化能力有了显著的提升。利用这一关键见解,我们提出了一种适用于大语言模型的结构化稀疏微调(S$^{2}$FT)方法系列,该方法能够同时实现最先进的微调性能、训练效率和推理可扩展性。S$^{2}$FT通过“选择稀疏,计算密集”来实现这一点。它分别在每个Transformer块的多头注意力(MHA)模块和前馈网络(FFN)模块中选择少数几个头和通道。接下来,它在大语言模型的耦合结构两侧共同排列权重矩阵,将每层中选定的组件连接成一个密集的子矩阵。最后,S$^{2}$FT对所有子矩阵进行原地梯度更新。通过理论分析和实证结果,我们的方法防止了过拟合和遗忘,在常识和算术推理方面分别比LoRA平均提高了4.6%和1.3%,并且在指令调优后泛化到各种领域时,比全量微调高出11.5%。使用我们的部分反向传播算法,S$^{2}$FT在训练内存上最多节省3倍,并且在延迟上比全量微调提高了1.5到2.7倍,同时在这两个指标上平均比LoRA提高了10%。我们进一步证明,S$^{2}$FT中的权重更新可以解耦为适配器,从而实现有效的融合、快速切换和高效并行,以服务于多个微调模型。
-
- 图表
- 解决问题当前的PEFT方法在大型语言模型(LLM)上无法同时实现高质量、高效训练和可扩展的推理。这是一个新的挑战,因为之前的解决方案往往只能满足这三个要求中的两个。
- 关键思路论文提出了Structured Sparse Fine-Tuning (S²FT) 方法,通过“选择稀疏地计算密集地”来解决上述问题。具体来说,S²FT选择每个Transformer块中的少量注意力头和前馈网络通道,并通过重新排列权重矩阵将这些组件连接成一个密集子矩阵,然后对所有子矩阵进行原地梯度更新。这种方法不仅提高了泛化能力,还显著提升了训练效率和推理可扩展性。
- 其它亮点论文通过理论分析和实验证明,S²FT在防止过拟合和遗忘方面表现出色,平均在常识和算术推理任务上比LoRA分别提高了4.6%和1.3%,在多领域泛化任务上比全量微调(Full FT)提高了11.5%。此外,S²FT的局部反向传播算法节省了高达3倍的训练内存,并且在延迟上比全量微调提高了1.5到2.7倍。论文还展示了S²FT的权重更新可以解耦为适配器,支持有效的融合、快速切换和高效的并行化,适用于多个微调模型的部署。论文提供了详细的实验设计,使用了多个数据集,并且开源了代码,为后续研究提供了基础。
- 近期在这个领域中,有几项相关研究值得关注:1. LoRA (Low-Rank Adaptation) 提出了通过低秩矩阵分解来减少微调参数量,但仍然存在训练效率和推理可扩展性的局限。2. P-tuning 和 Prefix-Tuning 研究了如何通过引入可学习的前缀来提高模型的泛化能力,但这些方法在大规模模型上的应用效果有限。3. BitFit 提出只微调模型的部分参数,如偏置项,以提高效率,但在性能上仍有提升空间。4. Adapter-based 方法通过插入轻量级的适配器模块来实现模型微调,但这些方法在多任务学习和模型并行化方面仍有改进的空间。
NEW
提问交流
提交问题,平台邀请作者,轻松获得权威解答~
向作者提问

提问交流