【大语言模型】ACL2024论文-01 Quantized Side Tuning: Fast and Memory-Efficient Tuning of Quantized Large Language
概览
本文介绍了一种名为Quantized Side Tuning(QST)的新方法,旨在解决大型语言模型(LLMs)在微调过程中的内存效率和速度问题。QST通过一个双阶段过程实现:首先,将LLM的模型权重量化为4位,以减少模型权重的内存占用;其次,引入一个与LLM分离的侧网络,该网络利用LLM的隐藏状态来进行特定任务的预测。这种方法显著减少了LLM微调过程中的内存占用,并加快了微调过程,同时保持了与现有技术相当的性能。实验表明,QST可以将总内存占用减少高达2.3倍,并将微调过程的速度提高高达3倍。
研究背景与技术背景
大型语言模型(LLMs)在多种下游任务中表现出色,但其微调过程需要显著的内存资源。现有的微调方法主要关注参数效率,即只更新一小部分可训练参数,或者尝试减少训练阶段的内存占用。然而,这些方法在减少内存占用方面仍有局限,尤其是在模型权重、优化器状态和中间激活这三个主要来源上。随着模型规模的增加,这些挑战变得更加严峻,限制了LLMs在实际应用中的部署。
技术挑战
LLMs的微调面临的主要技术挑战包括:
- 内存占用:模型权重、优化器状态和中间激活的内存占用随着模型规模的增加而显著增长。
- 训练效率:在保持模型性能的同时,减少训练时间和资源消耗。
- 参数效率:在不显著增加模型参数的情况下,实现有效的微调。
这些挑战限制了LLMs在资源受限的环境中的应用,尤其是在需要快速部署和响应的场景中。
如何破局
QST通过以下方法解决了上述挑战:
- 4位量化:将模型权重从16位量化到4位,显著减少了模型权重的内存占用。
- 侧网络:引入一个与LLM分离的侧网络,避免了通过LLM进行反向传播,从而减少了中间激活的内存需求。
- 低秩适配器和无梯度下采样模块:使用这些技术显著减少了可训练参数,进一步减少了优化器状态的内存占用。
这些方法共同作用,使得QST在减少内存占用和提高微调速度方面取得了显著的效果。
技术应用
QST的实验设置包括在不同的LLMs(如OPT和LLaMA 2)上进行评估,这些模型的参数量从13亿到700亿不等。实验在多个基准测试上进行,包括GLUE和MMLU,涵盖了自然语言理解和生成任务。QST在这些任务上展示了其在减少内存占用和提高微调速度方面的优势,同时保持了与全参数微调相当的性能。
QST的潜在应用包括但不限于:
- 资源受限的环境:在移动设备或边缘计算环境中部署LLMs。
- 快速原型设计和测试:在开发新应用时快速迭代和测试不同的模型配置。
- 大规模部署:在需要处理大量并发请求的在线服务中使用LLMs。
主要相关工作与参考文献
QST的相关工作涵盖了参数效率微调和内存效率训练的多个方面。一些关键的参考文献包括:
- 参数效率微调:如LoRA、Adapter等方法,通过引入新的任务特定参数或更新模型中一小部分参数来实现微调。
- 内存效率训练:如可逆神经网络和梯度检查点等技术,通过减少中间激活的存储需求来降低内存占用。
- 网络压缩:如网络剪枝和蒸馏,通过减少模型大小来提高训练和推理的计算效率。
这些工作为QST的发展提供了理论基础和技术背景,QST在此基础上通过创新的方法进一步推动了LLMs的微调效率和内存占用的优化。
后记
如果觉得我的博客对您有用,欢迎 打赏 支持!三连击 (点赞、收藏、关注和评论) 不迷路,我将持续为您带来计算机人工智能前沿技术(尤其是AI相关的大语言模型,深度学习和计算机视觉相关方向)最新学术论文及工程实践方面的内容分享,助力您更快更准更系统地了解 AI前沿技术。