LLM-Pruner: 剪枝+少量数据+少量训练 = 高效的LLM压缩

本文介绍了LLM-Pruner,一种针对大语言模型的结构化剪枝方法,旨在在减少大规模重新训练和依赖数据的同时,保持模型的多任务能力和通用性。通过参数组重要性分析、剪枝和低秩近似的快速恢复策略,LLM-Pruner在有限资源下有效压缩了大模型,如LLaMA、Vicuna和ChatGLM,并在实验中证明了其在零样本任务中的表现。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

a488a185bfb99bd4180767338d9eefe2.gif

ebf59e31f229735aba23c2376c184f39.png

概要

大语言模型(LLMs, Large Language Models)在各种任务上展现出了惊人的能力,这些能力很大程度上来自于模型庞大的模型规模以及海量的训练语料。为了应对这些模型部署上存在的挑战,许多研究者开始关注大语言模型的轻量化问题。由于 LLM 模型庞大的参数量,我们希望能以最小的成本完成对模型的压缩,尽可能的减少压缩后训练的开销,实现高效的模型压缩。

因为,我们提出了一种基于自动化的结构化剪枝的方案,采用结构化剪枝可以尽最大可能保留模型已习得的知识,实现高效的大语言模型压缩。在实验中,我们仅使用了 5 万条训练语料以及单张 4090 24GB 显卡,就可以在 3 小时内完成 LLaMA,Vicuna 和 ChatGLM 等大语言模型的剪枝和训练。

fa1b1e22749d6f6cf17e995c6c7d8364.png

论文标题:

LLM-Pruner: On the Structural Pruning of Large Language Models

论文作者:

Xinyin Ma, Gongfan Fang, Xinchao Wang

单位:

新加坡国立大学

论文地址:

https://arxiv.org/abs/2305.11627

Github地址:

https://github.com/horseee/LLM-Pruner

1e92f2b6520152d55b0a124852a18ab5.png

大语言模型压缩面临的问题

首先,大语言模型的压缩与之前的语言模型(例如 BERT,RoBERTa 等)的压缩等有什么差异呢。这需要从模型/数据/任务三个角度来分析,

  • 模型规模:第一个主要差异来自 LLM 参数量规模远超之前的语言模型,这导致许多依赖重新训练的压缩方案,例如知识蒸馏,重新训练的开销较大。

  • 海量训练语料:许多 LLMs 经历了 1 万亿甚至更大规模的 tokens 上的训练,这导致许多依赖于原始数据或收集替代数据的方案变得尤其昂贵。

  • 任务无关的模型压缩:现有的压缩算法通常针对单一、特定的任务进行压缩,而 LLMs 是很优秀的多任务处理器,在压缩过程中我们不希望折损 LLM 的通用性和多功能性。

上述三种问题实际上对应了三个基本要求:

  • 降低训练规模:压缩算法需要尽可能少的依赖大规模的重新训练。

  • 减少数据依赖:压缩训练所需要的数据需要尽可能少

  • 保留模型原始能力:压缩模型过程中需要保留一定的原始模型能力。

由此,我们需要一种能够避免大规模重新训练、且能保持模

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值