Delta-CoMe:清华联合OpenBMB等高校开源的新型增量压缩算法

简介: Delta-CoMe是由清华大学NLP实验室联合OpenBMB开源社区、北京大学和上海财经大学提出的新型增量压缩算法。该算法通过结合低秩分解和低比特量化技术,显著减少了大型语言模型的存储和内存需求,同时保持了模型性能几乎无损。Delta-CoMe特别适用于处理数学、代码和多模态等复杂任务,并在推理速度上有所提升。

❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦


🚀 快速阅读

  1. 模型压缩:显著减少大型语言模型的存储和内存需求。
  2. 性能保持:在压缩的同时保持模型性能,尤其在复杂任务中表现出色。
  3. 多任务处理:支持同时部署多个模型,提高模型部署的灵活性和效率。

正文(附运行示例)

Delta-CoMe 是什么

公众号: 蚝油菜花 - Delta-CoMe

Delta-CoMe是清华大学NLP实验室联合OpenBMB开源社区、北京大学和上海财经大学提出的新型增量压缩算法。该算法通过结合低秩分解和低比特量化技术,利用模型参数增量(Delta)的低秩特性,实现混合精度压缩。这种方法能在大幅降低存储和推理成本的同时,保持模型性能几乎无损,尤其在处理数学、代码和多模态等复杂任务时表现出色。

Delta-CoMe 的主要功能

  • 模型压缩:基于混合精度压缩技术,显著减少大型语言模型(LLMs)的存储和内存需求,让在有限的硬件资源上部署更多的模型成为可能。
  • 性能保持:在压缩的同时,保持模型的性能,尤其是在复杂的任务如数学问题解决、代码生成和多模态任务中,确保压缩后的模型性能接近未压缩的微调模型。
  • 多任务处理:支持同时部署多个具有不同能力的模型,适用于多租户和多任务处理场景,提高模型部署的灵活性和效率。
  • 推理速度提升:基于实现Triton kernel算子,在推理速度上相比PyTorch实现方式提升近3倍,进一步优化模型的运行效率。

Delta-CoMe 的技术原理

  • 低秩分解:用奇异值分解(SVD)对模型参数增量(Delta)进行低秩分解,发现Delta参数具有低秩特性,即大部分变化集中在少数几个主成分上。
  • 混合精度量化:基于低秩分解的结果,采用混合精度量化方法,对不同的奇异向量分配不同的位宽。较大奇异值对应的奇异向量用较高精度表示,而较小奇异值对应的奇异向量用较低精度表示,减少存储需求。
  • 长尾分布利用:Delta-CoMe观察到Delta参数的奇异值呈现长尾分布,即大部分奇异值较小,只有少数奇异值较大。因此,对于小奇异值对应的奇异向量进行更激进的压缩,对于大奇异值对应的奇异向量保留更高的精度。
  • 兼容性和泛化性:Delta-CoMe方法适用于特定的模型或任务,而且具有很好的泛化性,能与不同的主干模型(如Llama-2、Llama-3和Mistral)兼容,并在多种任务上保持良好性能。
  • 硬件优化:为进一步提升推理速度,Delta-CoMe实现针对混合精度量化的Triton kernel算子,让在硬件上的部署更加高效。

如何运行 Delta-CoMe

安装

conda create -n Delta-CoMe python=3.9
conda activate Delta-CoMe
pip install -r requirements.txt

压缩

我们发布了llama和mistral系列的模型。详情请参见llama.py和mistral.py。

bash run.sh  # 运行llama系列模型,详情请参见run.sh

评估

See ./evaluation for more details.

资源


❤️ 如果你也关注 AI 的发展现状,且对 AI 应用开发非常感兴趣,我会每日跟你分享最新的 AI 资讯和开源应用,也会不定期分享自己的想法和开源实例,欢迎关注我哦!

🥦 微信公众号|搜一搜:蚝油菜花 🥦

相关实践学习
使用PAI+LLaMA Factory微调Qwen2-VL模型,搭建文旅领域知识问答机器人
使用PAI和LLaMA Factory框架,基于全参方法微调 Qwen2-VL模型,使其能够进行文旅领域知识问答,同时通过人工测试验证了微调的效果。
机器学习概览及常见算法
机器学习(Machine Learning, ML)是人工智能的核心,专门研究计算机怎样模拟或实现人类的学习行为,以获取新的知识或技能,重新组织已有的知识结构使之不断改善自身的性能,它是使计算机具有智能的根本途径,其应用遍及人工智能的各个领域。 本课程将带你入门机器学习,掌握机器学习的概念和常用的算法。
相关文章
|
10月前
|
人工智能 算法 新能源
琶洲算法大赛首场高校巡回赛中山大学站圆满收官
近日,琶洲算法大赛高校巡回赛全国首站在中山大学珠海校区圆满收官。琶洲算法大赛定位为国际性算法领域权威赛事,旨在推动人工智能技术创新与产业融合‌,举办三届以来,琶洲已经评选出41位琶洲领军算法师,落地人才团队170个,极大程度扩充丰富了本地算法人才数量和层级。
119 2
|
10月前
|
人工智能 算法 语音技术
Video-T1:视频生成实时手术刀!清华腾讯「帧树算法」终结闪烁抖动
清华大学与腾讯联合推出的Video-T1技术,通过测试时扩展(TTS)和Tree-of-Frames方法,显著提升视频生成的连贯性与文本匹配度,为影视制作、游戏开发等领域带来突破性解决方案。
356 4
Video-T1:视频生成实时手术刀!清华腾讯「帧树算法」终结闪烁抖动
|
11月前
|
算法
基于电导增量MPPT控制算法的光伏发电系统simulink建模与仿真
本课题基于电导增量MPPT控制算法,使用MATLAB2022a的Simulink进行光伏发电系统的建模与仿真,输出系统电流、电压及功率。电导增量调制(IC)算法通过检测电压和电流变化率,实时调整光伏阵列工作点,确保其在不同光照和温度条件下始终处于最大功率输出状态。仿真结果展示了该算法的有效性,并结合PWM技术调节逆变流器占空比,提高系统效率和稳定性。
|
存储 JSON 算法
TDengine 检测数据最佳压缩算法工具,助你一键找出最优压缩方案
在使用 TDengine 存储时序数据时,压缩数据以节省磁盘空间是至关重要的。TDengine 支持用户根据自身数据特性灵活指定压缩算法,从而实现更高效的存储。然而,如何选择最合适的压缩算法,才能最大限度地降低存储开销?为了解决这一问题,我们特别推出了一个实用工具,帮助用户快速判断并选择最适合其数据特征的压缩算法。
286 0
|
算法 数据处理 数据安全/隐私保护
|
算法 Java
Java面试题:解释垃圾回收中的标记-清除、复制、标记-压缩算法的工作原理
Java面试题:解释垃圾回收中的标记-清除、复制、标记-压缩算法的工作原理
277 1
|
数据采集 算法 安全
CVPR 2024:给NeRF开透视眼!稀疏视角下用X光进行三维重建,9类算法工具包全开源
【6月更文挑战第28天】CVPR 2024亮点:SAX-NeRF框架开源!融合X光与NeRF,提升3D重建效果。X3D数据集验证,Lineformer+MLG策略揭示物体内部结构,增强几何理解。虽有计算成本及泛化挑战,但为计算机视觉和医学影像开辟新路径。[论文链接](https://arxiv.org/abs/2311.10959)**
685 5
|
算法 Java 程序员
Java面试题:解释Java的垃圾回收机制,包括常见的垃圾回收算法。介绍一下Java的垃圾回收算法中的标记-压缩算法。
Java面试题:解释Java的垃圾回收机制,包括常见的垃圾回收算法。介绍一下Java的垃圾回收算法中的标记-压缩算法。
160 0
|
机器学习/深度学习 算法 搜索推荐
一个开源且全面的C#算法实战教程
一个开源且全面的C#算法实战教程
277 0
|
3月前
|
机器学习/深度学习 算法 机器人
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
【水下图像增强融合算法】基于融合的水下图像与视频增强研究(Matlab代码实现)
381 0

热门文章

最新文章