QLORA: 高效FINETUNING 量化 LLMS

 ✒️ @halomaster 📅 28 May 2023, 03:21 GMT⋮ 【AI】 

Dettmers提出了一种高效的微调方法QLoRA,它能够在保持完整的16位微调任务性能的同时,将内存使用量降低到足以在单个48GB GPU上微调65B参数模型的程度。 QLoRA通过在低秩适配器(LoRA)中将梯度反向传播到一个冻结的、4位量化的预训练语言模型。我们最优秀的模型家族,我们将其命名为Guanaco,在Vicuna基准测试中胜过之前所有公开发布的模型,达到了ChatGPT性能水平的99.3%,而仅需要在单个GPU上进行24小时的微调。QLoRA在不牺牲性能的前提下采用了许多创新技术来节省内存: (a)4位NormalFloat(NF4),一种对于正态分布权重来说,从信息理论角度具有最优性的新数据类型; (b)双重量化,通过量化量化常数来减少平均内存占用; (c)分页优化器,以管理内存峰值。我们使用QLoRA对超过1000个模型进行微调,在8个指令数据集中,对多种模型类型(LLaMA,T5)以及在常规微调中难以运行的模型规模(例如33B和65B参数模型)进行了详细的指令跟随和聊天机器人性能分析。 结果表明,QLoRA在小型高质量数据集上的微调可以达到最先进的结果,即使使用比之前SoTA更小的模型。我们根据人类评估和GPT-4评估结果,对聊天机器人性能进行了详细分析,结果表明GPT-4评估是一种廉价且合理的人类评估替代方案。此外,当前的聊天机器人基准测试并不可靠,无法准确评估聊天机器人的性能水平。已发布了所有模型和代码,包括用于4位训练的CUDA内核。 https://jieyibu.net/2023/05/27/qlora-%e9%ab%98%e6%95%88finetuning-%e9%87%8f%e5%8c%96-llms/


[1] @halomaster • 15 Jun 2023, 23:08 GMT 
QLORA可以高效地微调量化的大语言模型。 主要贡献和发现如下: 提出了一种称为Normal Float 4-bit(NF4)的数据类型,可以更有效地使用4bit来量化模型参数,比传统的4bit float和integer有更高的准确性。 使用量化常数的双重量化技术,可以大幅减少内存占用但不损失性能。 使用分页优化器来处理梯度checkpoint期间的内存峰值,能在单个GPU上微调33B和65B的参数模型。 实验结果表明,使用NF4的QLORA可以复制16bit全微调和LoRA微调的性能,且NF4比传统4bit float效果更好。 使用QLORA微调了最新的LLaMA 33B和65B模型,并命名为Guanaco。Guanaco表现出类似ChatGPT的逼真性,是迄今为止性能最好的开源聊天机器人。 开发了基于GPT4和人工评审的新方法来评估聊天机器人的性能。 QLORA可以大幅提高LLM微调的可访问性,尤其是对资源有限的研究人员,有助于缩小大公司和小团队之间的差距。 ------------------------------------------------------------------------------------------- 相信QLORA可以产生广泛的积极影响,让高质量LLM的微调更广泛和便捷获得。


1 of 1 pages  1 replies