#参数高效微调(PEFT)通过微调少量参数固定大部分预训练参数,大幅降低计算存储成本,同时保持或提升性能。主要分为三类:增加额外参数(如Prefix Tuning、Prompt Tuning、P-Tuning)、选取部分参数更新(如BitFit)、引入重参数化(如LoRA、AdaLoRA、QLoRA)。这些技术使大模型微调更高效,尤其适合资源有限场景,是现代大模型应用的重要技术方向。

如图4.8所示,高效微调技术可以粗略分为以下三大类:增加额外参数(Additive)、选取部分参数更新(Selective)、引入重参数化(Reparametrization)。而在增加额外参数这类方法中,又主要分为类适配器(Adapters)方法和软提示(Soft Prompts)两个小类。

图4.8 常见的参数高效微调技术和方法

常见的参数高效微调技术有选取部分参数更新的BitFit,增加额外参数的Prefix Tuning、Prompt Tuning、P-Tuning等,以及重参数化的LoRA等,以下将对一些主流的参数高效微调方法进行讲解。

部分参数的高效微调

虽然对每个任务进行全量微调非常有效,但它也会为每个预训练任务生成一个独特的大型模型,这使得很难推断微调过程中发生了什么变化,也很难部署,特别是随着任务数量的增加,很难维护。但是,通过参数量更小的BitFit稀疏微调方法就可以实现高效微调。

BitFit是一种稀疏的微调方法,它训练时只更新偏置的参数或者部分偏置参数。对于Transformer模型而言,冻结大部分Transformer解码器参数,只更新偏置参数跟特定任务的分类层参数。涉及的偏置参数有注意力模块中计算查询、键、值以及合并多个注意力结果时涉及的偏置、MLP层中的偏置、归一层的偏置参数,预训练模型中的偏置参数如图4.9所示。

图4.9 预训练模型中的偏置参数示意图

通过实验结果可以看出,BitFit微调结果相对全量参数微调而言,只更新极少量参数的情况下,在多个数据集上都达到了不错的效果,虽不及全量参数微调,但是远超固定全部模型参数的冻结方式。

参数增加的高效微调

接下来主要介绍Prefx Tuning、Prompt Tuning、P-Tuning的参数增加的高效微调技术。

1.Prefx Tuning

Prefx Tuning是在输入token之前构造一段任务相关的虚拟tokens作为前缀(Prefx),然后训练的时候只更新Prefx部分的参数,而PLM中的其他部分参数固定。针对不同的模型结构,需要构造不同的Prefx。

(1)针对自回归架构模型:在句子前面添加前缀,得到z=[PREFIX;x;y],合适的上文能够在固定语言模型的情况下引导生成下文(例如GPT-3的上下文学习)。

(2)针对编码器-解码器架构模型:编码器和解码器都增加了前缀,得到z=[PREFIX;x;PREFIX0;y]。编码器端增加前缀是为了引导输入部分的编码,解码器端增加前缀是为了引导后续token的生成。

2.Prompt Tuning

提示微调(Prompt Tuning)可以看作Prefx Tuning的简化版本,它给每个任务定义了自己的提示,然后拼接到数据上作为输入,同时,只在输入层加入提示tokens,并且不需要加入MLP进行调整来解决难训练的问题。

3.P-Tuning

该方法的提出主要是为了解决这样一个问题:大模型的Prompt构造方式严重影响下游任务的效果。P-Tuning将提示转换为可以学习的嵌入层,并利用MLP结合LSTM的方式来对提示嵌入进一步处理。相比Prefx Tuning,P-Tuning加入可微的虚拟token,但仅限于输入层,没有在每一层都加;另外,虚拟token的位置也不一定是前缀,插入的位置是可选的。这里的出发点实际是把传统人工设计模板中的真实token替换成可微的虚拟token,图4.12为离散提示和P-Tuning的对比,在图4.12(a)中,提示生成器仅接收离散奖励;相反,在图4.12(b)中,伪提示和提示编码器可以以可微分的方式进行优化。

图4.12 离散提示和P-Tuning的对比图

重参数化的高效微调

接下来主要介绍LoRA系列的重参数化高效微调技术,包括LoRA、AdaLoRA和QLoRA。

1.LoRA

LoRA是可以改善训练和推理延迟、难训练且会减少原始训练数据中的有效文字长度的微调方法。对于使用LoRA的模型来说,由于可以将原权重与训练后权重合并,因此在推理时不存在额外的开销。与用Adam微调的GPT-3 175B相比,LoRA可以将可训练参数的数量减少10000倍,对GPU内存的要求减少3倍。

2.AdaLoRA

AdaLoRA是对LoRA的一种改进,它根据重要性评分动态分配参数预算给权重矩阵。在AdaLoRA中,以奇异值分解的形式对权重矩阵的增量更新进行参数化。然后,根据新的重要性指标,通过操纵奇异值,在增量矩阵之间动态地分配参数预算。这种方法有效地提高了模型性能和参数效率。

3.QLoRA

QLoRA并没有对LoRA的逻辑做出修改,而是通过将预训练模型量化为4bit以进一步节省计算开销。使用一种新颖的高精度技术将预训练模型量化为4bit,然后添加一小组可学习的低秩适配器权重,这些权重通过量化权重的反向传播梯度进行微调。QLoRA将LoRA的Transformer结构量化到4位精度,如图4.20所示。QLoRA有一种低精度4bit存储数据类型,还有一种BFloat16计算数据类型。实际上,这意味着无论何时使用QLoRA权重张量,我们都会将张量反量化为BFloat16,然后执行16位矩阵乘法。QLoRA提出了两种技术实现高保真4bit微调——4bit NormalFloat(NF4)量化和双量化。此外,还引入了分页优化器,以防止梯度检查点期间的内存峰值,从而导致内存不足的错误,这些错误在过去使得大型模型难以在单台机器上进行微调。QLoRA可以将650亿参数的模型在单张48GBGPU上微调并保持原本16bit微调的性能。

图4.20 QLoRA将LoRA的Transformer结构量化到4位精度

全文引自《开启智能对话新纪元:大规模语言模型的探索与实践》

读者福利大放送:如果你对大模型感兴趣,想更加深入的学习大模型**,那么这份精心整理的大模型学习资料,绝对能帮你少走弯路、快速入门**

如果你是零基础小白,别担心——大模型入门真的没那么难,你完全可以学得会

👉 不用你懂任何算法和数学知识,公式推导、复杂原理这些都不用操心;
👉 也不挑电脑配置,普通家用电脑完全能 hold 住,不用额外花钱升级设备;
👉 更不用你提前学 Python 之类的编程语言,零基础照样能上手。

你要做的特别简单:跟着我的讲解走,照着教程里的步骤一步步操作就行。

包括:大模型学习线路汇总、学习阶段,大模型实战案例,大模型学习视频,人工智能、机器学习、大模型书籍PDF。带你从零基础系统性的学好大模型!

现在这份资料免费分享给大家,有需要的小伙伴,直接VX扫描下方二维码就能领取啦😝↓↓↓
在这里插入图片描述

为什么要学习大模型?

数据显示,2023 年我国大模型相关人才缺口已突破百万,这一数字直接暴露了人才培养体系的严重滞后与供给不足。而随着人工智能技术的飞速迭代,产业对专业人才的需求将呈爆发式增长,据预测,到 2025 年这一缺口将急剧扩大至 400 万!!
在这里插入图片描述

大模型学习路线汇总

整体的学习路线分成L1到L4四个阶段,一步步带你从入门到进阶,从理论到实战,跟着学习路线一步步打卡,小白也能轻松学会!
在这里插入图片描述

大模型实战项目&配套源码

光学理论可不够,这套学习资料还包含了丰富的实战案例,让你在实战中检验成果巩固所学知识
在这里插入图片描述

大模型学习必看书籍PDF

我精选了一系列大模型技术的书籍和学习文档(电子版),它们由领域内的顶尖专家撰写,内容全面、深入、详尽,为你学习大模型提供坚实的理论基础。
在这里插入图片描述

大模型超全面试题汇总

在面试过程中可能遇到的问题,我都给大家汇总好了,能让你们在面试中游刃有余
在这里插入图片描述

这些资料真的有用吗?

这份资料由我和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理,现任上海殷泊信息科技CEO,其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证,服务航天科工、国家电网等1000+企业,以第一作者在IEEE Transactions发表论文50+篇,获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。

资料内容涵盖了从入门到进阶的各类视频教程和实战项目,无论你是小白还是有些技术基础的技术人员,这份资料都绝对能帮助你提升薪资待遇,转行大模型岗位。
在这里插入图片描述
👉获取方式

😝有需要的小伙伴,可以保存图片到VX扫描下方二维码免费领取【保证100%免费】
在这里插入图片描述
相信我,这套大模型系统教程将会是全网最齐全 最适合零基础的!!

Logo

更多推荐