智源社区 2024年11月30日
80G显存塞50个7B大模型!清华&OpenBMB开源增量压缩新算法,显存节省8倍
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_guoji1.html

 

清华大学NLP实验室联合OpenBMB开源社区等团队提出Delta-CoMe,一种新的模型增量压缩技术。该技术利用主干模型与任务专用模型之间参数增量的低秩特性,结合低秩分解和低比特量化,实现了模型存储开销和部署成本的大幅降低。Delta-CoMe不仅在数学、代码、多模态等复杂任务上保持了接近无损的性能,还显著提升了推理效率,例如,一个80G的A100 GPU可以轻松加载多达50个7B模型。这项技术为多任务处理和模型部署开辟了新的可能,有助于解决大语言模型部署的资源瓶颈问题,并推动其在更广泛的实际应用中的普及和高效运作。

🚀 **利用模型参数增量(Delta)进行压缩:** Delta-CoMe的核心思想是利用主干模型与任务专用模型之间参数增量(Delta)的低秩特性进行压缩,从而大幅降低模型存储开销和部署成本。例如,一个80G的A100 GPU可以轻松加载多达50个7B模型,节省显存约8倍。

💡 **结合低秩分解和低比特量化:** Delta-CoMe采用SVD进行低秩分解,发现Delta参数呈现长尾分布,并结合混合精度量化,将重要参数用高精度表示,不重要参数用低精度表示,实现接近无损的性能。

💻 **推理速度显著提升:** 团队为混合精度量化实现了Triton kernel算子,对比Pytorch的实现方式,推理速度提升了近3倍,这使得部署大规模模型成为可能。

📊 **在复杂任务上表现出色:** 在数学、代码、对话、多模态等多个任务上,Delta-CoMe展现出平均几乎无损的性能,与压缩前的微调模型表现基本接近。

💪 **优于传统微调方法:** Delta-CoMe在相同存储开销下,性能显著优于LoRA微调,并可以应用于多种精度的Backbone,在多租户和多任务场景中具有显著的应用价值。

最新模型增量压缩技术,一个80G的A100 GPU能够轻松加载多达50个7B模型节省显存约8倍,同时模型性能几乎与压缩前的微调模型相当。

清华大学NLP实验室携手OpenBMB开源社区、北京大学和上海财经大学的研究团队,提出Delta-CoMe

这项技术的核心在于利用主干模型与任务专用模型之间参数增量(即Delta)的特点进行压缩,从而实现存储开销和部署成本的大幅降低。不仅有助于解决资源瓶颈问题,更为多任务处理和模型部署开辟新的可能。

具体而言,Delta-CoMe将低秩分解和低比特量化技术相结合,充分利用Delta参数的低秩特性,提出了一种全新的混合精度压缩方法。这种方法不仅能够实现接近无损的任务性能,还能显著提升推理效率。

Delta-CoMe方法介绍

微调是增强预训练模型的重要手段,不同任务往往需要不同的微调方式。例如Luo et al.[1]提出RLEIF通过Evove-instruction来增强模型数学推理能力;Wei et al.[2]利用Code snnipet合成高质量的指令数据来增加模型的代码能力。然而,这些方法通常依赖高质量数据,并需要精心设计的策略才能实现显著的效果。

在一些场景中往往需要具有不同能力的LLM同时处理问题,例如多租户场景,多任务场景以及端侧场景等等。一种自然的解决方案是部署单个通用模型作为主干,配合多个具有专有能力的Delta。

以Bitdelta[3]为例,它通过将模型的Delta压缩到1-bit,有效保留了模型在问答等场景中的能力。尽管该压缩方法在存储和推理效率上表现出色,其在更复杂的任务(如数学推理和代码生成)上仍存在明显的能力瓶颈。

针对这一挑战,THUNLP实验室联合北京大学和上海财经大学提出Delta-CoMe。这一方法结合低秩分解和低比特量化技术,不仅显著提升了模型在复杂任务上的表现,还兼顾了压缩效率和实际应用需求,为模型的高效部署提供了一种新思路。

与前人的方法相比,Delta-CoMe方法的优点在于:

    结合低秩与低比特量化,利用了Delta低秩的特点,并发现低秩分解后的Delta是长尾分布的;之后采用混合精度量化进一步压缩

    性能几乎无损,相比于BitDelta等方法,在Math, Code, Multi-modal等复杂任务上,性能与压缩前的微调模型表现基本接近

    推理速度提升,为混合精度量化实现了Triton kernel算子,对比Pytorch的实现方式,带来近3倍的推理速度提升

    超过Delta-tuning,支持多精度Backbone,Delta-CoMe在效果上显著优于LoRA微调,并可以用在多种精度的Backbone上

具体而言,Delta-CoMe首先采用SVD进行低秩分解,Delta 具有低秩性,经过低秩分解之后,其特征值呈现出长尾分布的规律,仅有少数较大奇异值对应的奇异向量对最终的结果贡献较大。

一个自然的想法,我们可以根据奇异值的大小进行混合精度量化,将较大的奇异值对应的奇异向量用较高精度表示,而较小的奇异值对应的奇异向量用较低精度表示。

实验结果

多个开源模型和 Benchmark 的实验验证了该方法的有效性。

使用Llama-2作为主干模型,在数学、代码、对话、多模态等多个任务中进行实验,Delta-CoMe展现出平均几乎无损的性能。下面分别是7B模型和13B模型的实验效果。

此外,还在Mistral、Llama-3等其它主干模型上对不同的压缩方法进行了验证。

为了提升混合精度量化的计算效率,实现一个Triton Kernel,相比于Pytorch的实现方式,推理速度提升了约3倍。

实验结果表明,使用一块80G的A100 GPU可以加载50个7B模型。

最后,还比较了Delta-Tuning和Delta-Compression的效果差异(Delta-Tuning指的是通过训练部分参数进行微调,Delta-Compression指的是先进行全参数微调,再将微调带来的模型参数增量进行压缩)。其中Delta-Tuning采用的是LoRA。Delta-CoMe对比LoRA在相同的存储开销下,性能显著提升。

Delta-CoMe 通过结合低秩分解和低比特量化,不仅实现了大幅度的存储压缩,还在复杂任务如数学推理、代码生成和多模态任务上维持了与压缩前模型相当的性能表现。相比于传统的微调方法,Delta-CoMe 展现出了更高的灵活性,尤其在多租户和多任务场景中具有显著的应用价值。此外,借助 Triton kernel 的优化,推理速度得到了显著提升,使得部署大规模模型成为可能。未来,这一方法的潜力不仅在于进一步优化模型存储和推理速度,也有望在更广泛的实际应用中推动大语言模型的普及和高效运作。

参考文献

[1]Yu, L., Jiang, W., Shi, H., Jincheng, Y., Liu, Z., Zhang, Y., Kwok, J., Li, Z., Weller, A., and Liu, W.Metamath: Bootstrap your own mathematical questions for large language models. In The Twelfth International Conference on Learning Representations, 2023.[2] Luo, Z., Xu, C., Zhao, P., Sun, Q., Geng, X., Hu, W., Tao, C., Ma, J., Lin, Q., and Jiang, D. Wizardcoder: Empowering code large language models with evol-instruct. arXiv preprint arXiv:2306.08568, 2023b

[3] Liu, J., Xiao, G., Li, K., Lee, J. D., Han, S., Dao, T., and Cai, T. Bitdelta: Your fine-tune may only be worth one bit. arXiv preprint arXiv:2402.10193, 2024b.

Paper链接:https://arxiv.org/abs/2406.08903
Github链接:https://github.com/thunlp/Delta-CoMe

—  —

投稿请发邮件到:

ai@qbitai.com

标题注明【投稿】,告诉我们:

你是谁,从哪来,投稿内容

附上论文/项目主页链接,以及联系方式哦

我们会(尽量)及时回复你

点这里?关注我,记得标星哦~

一键三连「分享」、「点赞」和「在看」

科技前沿进展日日相见 ~ 

Fish AI Reader

Fish AI Reader

AI辅助创作,多种专业模板,深度分析,高质量内容生成。从观点提取到深度思考,FishAI为您提供全方位的创作支持。新版本引入自定义参数,让您的创作更加个性化和精准。

FishAI

FishAI

鱼阅,AI 时代的下一个智能信息助手,助你摆脱信息焦虑

联系邮箱 441953276@qq.com

相关标签

Delta-CoMe 模型压缩 增量压缩 低秩分解 低比特量化
相关文章