网站开发的课程设置,网站开发的重难点,品牌营销策划成功案例,网站建设南阳本文详解PEFT#xff08;参数高效微调#xff09;技术#xff0c;重点介绍LoRA和QLora微调方法。LoRA通过低秩分解将权重变化矩阵转化为两个小矩阵#xff0c;仅训练少量参数#xff08;约0.01%-1%#xff09;#xff0c;实现接近全参数微调的性能。QLora结合量化技术进…本文详解PEFT参数高效微调技术重点介绍LoRA和QLora微调方法。LoRA通过低秩分解将权重变化矩阵转化为两个小矩阵仅训练少量参数约0.01%-1%实现接近全参数微调的性能。QLora结合量化技术进一步降低内存需求。文章涵盖PEFT五大分类、LoRA数学原理、实验评估及实际应用为资源有限条件下高效微调大模型提供完整解决方案。1、什么是PEFT**PEFTParameter Efficient Fine-Tuning参数高效微调**是指一类用于微调大型预训练语言模型Pretrained Language ModelsPLMs的技术通常仅更新或引入少量参数通常占总参数的1%-10%同时保持预训练模型的主体参数冻结不变。目标是以远少于全参数微调的资源开销获得接近、甚至等同或超过后者的性能。2、PEFT技术分类PEFT大致分为五类2.1 Additive Fine-Tuning附加式微调方法引入额外的可训练参数如适配器Adapter、连续的伪提示词向量原先模型的所有参数全部冻结。附加式微调方法可以分为三类1基于适配器Adapter-based的微调2基于软提示Soft Prompt-based的微调3其它2.2 Partial Fine-Tuning部分微调方法筛选预训练模型参数中对下游任务至关重要的子集冻结其余认为不重要的权重从而减少微调的参数量。部分微调方法可以分为三类1偏置更新2预训练掩码方法基于某种重要性评判标准如梯度、权重幅值等对预训练权重进行稀疏化筛选生成二进制掩码通过掩码动态冻结预训练模型中“不重要”的参数仅微调被掩码选中的参数。3权重掩码Delta Weight Masking不直接修改预训练权重而是学习一组增量权重Delta Weight通过掩码控制增量的稀疏性。2.3 Reparameterized Fine-Tuning重参数化微调方法通过数学变换或结构转换将模型的参数表示转换为另一种功能等价但参数量大大减少的形式冻结模型权重仅微调参数量更少的等价形式如 LoRALow Rank低秩矩阵分解。分为两类1LoRA分解2LoRA派生2.4 Hybrid Fine-Tuning混合微调方法结合多种微调策略如部分微调附加式微调灵活平衡计算效率和模型性能。分为两类1人为组合2自动组合2.5 Unified Fine-Tuning统一微调提出了一个用于微调的整合框架将多种微调方法整合为统一架构同一套接口规范如统一的预处理格式、导出格式和训练方法。用户可以在不同的任务上通过统一的接口调用不同的微调方法。不同于混合微调统一微调只采用单一的微调方法而不是多种方法的混合。3、LoRAReparameterized****Lora属于是一种高效的参数微调技术它的思想是全量参数中有意义或者说有重大影响的参数其实只有一小部分而已。我们可以对全量的参数把它**低秩分解为两个小矩阵****比如我们称之为 AB 矩阵**这两个矩阵的的参数量相比于全量模型的参数量就小的多。而我们实际在训练过程中会把这两个矩阵嵌入到整个模型架构中的****不同位置一共是7 个这些会位置可以是3 个“注意力层的Q、K、V权重矩阵的位置”从而影响他们最终汇合在一起的结果1 个“自注意力层的输出也可以附加 Lora 适配器”3个在 FFN 的两个线性变换再加一个门控的位置一共 7 个地方可以加添适配器而我们在训练期间其实只需要对 Lora 适配器当中的 AB 矩阵进行参数更新就可以达到一个接近全参数微调的一个效果。基于这样的机制我们需要调整的参数量没有那么多因为主要的基座模型的权重是被冻结的不需要调整。这样有一个好处就是在计算梯度的时候模型本身的权重哪些参数都不需要去计算损失跟梯度我们只需要计算 AB 矩阵的梯度就可以了。所以计算的梯度量也比较少所以总体来说Lora 这种微调方式它需要更新的参数量少所以计算量就小内存占用小所需资源就少训练时间也会更短。并且很多实践证明Lora 微调方式能够达到接近全参数微调效果所以 Lora 广泛被应用。简记Lora属于参数高效微调技术其理论依据为全参数微调中仅部分参数起关键作用。核心操作将全量参数分解为两个低秩矩阵A和B仅训练这两个矩阵。基座模型参数保持冻结状态。矩阵尺寸规范矩阵B为d×r矩阵A为r×k最终输出形状为d×k。其中r通常取值为8/16/32/64等较小数值。技术优势显著减少训练参数量降低显存占用和缩短训练时间实际训练时可直观对比全参数微调的资源消耗差异。3.1 背景Li等人2018a和Aghajanyan等人2020的研究表明经过训练或微调的过参数化权重规模远大于训练数据规模模型其有效参数空间即真正影响模型性能的关键变化实际上位于一个低维子空间低内在维度即低秩中。受此启发LoRA的研究团队认为可以用低秩矩阵来高效地近似或“等效代换”全参数微调过程中整个模型的参数变化。3.2 定义LoRALow-Rank Adaptation是一种高效参数微调技术基于对微调过程中权重变化矩阵▲W****低内在维度的洞察。通过对的低秩分解在大幅减少训练参数、显著降低显存开销的同时获得与全参数微调相当的性能。当预训练模型为 GPT-3 175B 时LoRA 微调可以0.01%的参数量1/3的内存占用获得了与全参数微调相当的性能。3.3 方法1用表示预训练模型中的权重矩阵全参数微调后获得的权重矩阵W可表示为LoRA微调利用了▲W 的低秩特性将其表示为两个低秩矩阵的乘积其中和分别为输出和输入特征维度。r是LoRA微调的秩通常 r min(d,k)。2训练过程中只更新A和B冻结其它权重。3需要更新的参数量只有d x r r x k通常r min(d,k)对于d_model 12288 的GPT-3 175B取极小值如1或2时更新的参数量低至全量微调的万分之一。4原文只对注意力机制的四个权重矩阵W_q, W_k, Q_v, W_o进行低秩代换即每个Transformer模块至多只包含四组作用于注意力机制的A和B。除了引入的A和B其它权重都是冻结的。3.4 数学表示1前向传播的输入为X激活值为h则对A采用随机正态分布初始化B初始化为零。3.5 码实现与论文的差别代码实现引入了一个额外的参数s成为缩放系数决定低秩矩阵对激活值的影响程度修正后的表示为α 是用户可配置的超参数通常记为lora_alpha用于控制低秩更新的强度。3.6 推理阶段的处理1合并W和AB为了追求低延迟训练结束后可以将W和AB合并为新的W这样推理时不会有任何额外延迟。2不合并也可以分别存储W和AB只是在推理时需要分别计算然后求和。这样会引入少量延迟但可以替换AB从而在不同任务间动态切换。3.7 优势与局限1优势对于使用Adam/AdamW优化器的大型Transformer模型由于无需为冻结参数存储优化器状态当 r d_model 时显存使用量减少高达2/3,。在GPT-3 175B模型上显存开销从1.2TB缩减至350GB。当 r4且只对Q和V投影矩阵进行低秩分解并冻结其它权重时模型检查点大小反映更新的参数量约为原先的万分之一从350GB缩减至35MB。部署时只需要存储一份预训练权重可通过仅切换LoRA权重以极低成本实现任务切换可以动态加载/卸载大量定制化模型。对GPT-3 175B对100个任务进行全参数微调后部署需要350GB X 100 35 TB 显存而进行LoR A微调则只需要 35GB 35MB X100 354GB。无需为绝大多数参数计算梯度因此与全参数微调相比训练更快在GPT-3 175B 上观察到 25% 的训练加速。2局限如果将A、B与权重矩阵W合并以消除额外推理延迟则无法在单次前向传播中批量处理针对不同任务的输入A和B不同。在延迟不敏感的场景可以不合并权重动态地为同一批次中的样本选择合适的LoRA模块。3.8 试验评估下表展示了不同的方法对、和模型进行微调后在GLUE基准测试上的得分。所有测试得分都是越高越好。1FT表示全参数微调。2BitFit表示偏置项微调。3Adpt^H 是原版的Adapter微调。4Adpt^P 也叫 Adpt^L是原版Adapter的改进只在MLP模块和层归一化之后添加Adapter。5Adpt^D 是另一种名为AdapterDrop的高效微调技术。3.9 应将LoRA适配应用于哪些权重矩阵上文提到研究团队只对自注意力模块应用LoRA适配其中包含四个权重矩阵W_q, W_k, Q_v, W_o。下表展示了当微调参数预算固定为18M参数的个数如果以FP16存储则占用空间约为35MB时在GPT-3 175B预训练模型上对不同的注意力权重矩阵进行LoRA适配后在WikiSQL和MultiNLI任务上测试的准确率。1将所有参数预算都用于适配▲W_q 或 ▲W_k会导致显著的性能损失。2同时对▲W_q和▲W_v进行适配在WikiSQL上可以获得最佳性能。3同时对所有矩阵进行适配可以在两个任务上都获得最佳性能。4这意味着即便只用大小为2的秩在所有矩阵上进行适配也可以从▲W中获得足够多的信息。5当参数预算固定的情况下用更小的秩适配更多的权重矩阵比用更大的秩适配单个权重矩阵能获得更好的效果。3.10 最佳秩的确定246864同时适配W_qW_qv时只需要很小的秩r即可获得最佳性能而仅适配则需要更大的秩。这证实了推论▲W具有极小的“内在秩”。3.11 时间复杂度和空间复杂度的置换1空间复杂度LoRA将▲W替换为BA_x参数量由d x k替换为d x r r x k在r min(d,k) 时参数量显著减少。以r 2为例参数量变为空间复杂度显著降低。2时间复杂度3总结LoRA本质上是以时间换空间以略大的算力开销为代价可以忽略不计显著降低了显存开销。目前大模型训练的瓶颈主要在于显存因此这样的置换是有意义的。此外全参数微调会更新所有权重而LoRA只会选择其中的一部分权重矩阵进行低秩代换进一步降低了显存开销同时也减少了额外的计算开销。是一种经济高效的微调方式。4、QLoraQLora Lora 量化技术 量化的是模型矩阵的参数而不是 AB 矩阵的参数4.1 定义通过4-bit量化的BaseModel在保持高性能的同时减少内存使用使得模型微调的门槛大大降低。4bit NormalFloat(NF4)提出了一种对于以零为中心的正态分布数据在信息论上最优的数据类型该数据类型对正态分布数据产生比4bitint和4bitfloat更好的效果;Double Quantization对量化常数进行量化减少存储空间;分页优化器在GPU偶尔内存不足的情况下自动在CPU和GPU之间进行页面到页面的传输以避免 GPU OOM。4.2 NF44.2.1 如果是平均量化SimpleQuant-Int4如下分布Y轴表示权重落入特定量化区间的比例4.2.2 NF4NF4是一种数据类型它在量化过程中保留了零点并使用所有2k位来表示k位数据类型。这种数据类型通过估计两个范围的分位数qi来创建一个非对称的数据类型这两个范围分别是负数部分[-1,0]的2k-1和正数部分[0,1]的2k-1 1。然后它统一了这两组分位数qi并从两组中都出现的两个零中移除一个。这种结果数据类型在每个量化 bin 中都有相等的期望值数量因此被称为k-bit NormalFloat (NFk)这种数据类型对于以零为中心的正态分布数据在信息论上是最优的。NF4分位数计算公式标准正态分布量化函数把[-1, 0]分成7份然后生成[-1, ..., 0]共8个分位数, 把[0, 1]分成8份 然后生成[0, ..., 1]共9个分位数两个合起来去掉一个0就生成全部的16个分位数了。4.3 Double Quantization在量化的过程中为了降低异常值的影响我们采用分块的方式进行进行量化。具体来说就是每64个参数共享一个量化常数(Absmax32bit)这样的话相当于每一个参数的量化额外开销为32bit/640.5bit。这个总体来说也是比较大的一个开销所以为了进一步优化这个量化开销我们对其进行二次量化DoubleQuantization对量化常数进行进一步的量化。我们采用256的块大小对量化常数进行FP8量化这样的话我们可以把每个参数的量化额外开销降低到8/64 32/(64 * 256) 0.127 bit4.4 分页优化器在GPU偶尔内存不足的情况下自动在CPU和GPU之间进行页面到页面的传输以避免GPU OOM。这个特性就像CPU RAM和磁盘之间的常规内存分页一样工作。我们使用这个特性为优化器状态分配分页内存当GPU内存不足时这些优化器状态会自动被驱逐到CPU RAM当在优化器更新步骤中需要内存时它们会被分页回GPU内存。5、秩Rank的数学概念秩是衡量矩阵中真正有效信息量的数学指标而LoRA技术正是巧妙地利用了权重矩阵的“低秩”特性来实现高效微调。下面我将通过一个对比表格和详细分解帮助您全面理解这个概念。 秩的核心概念与LoRA中的角色 如何直观理解“秩”从生活例子到数学我们可以通过一个简单的例子来感受什么是“秩”以及什么是“线性相关”。情景A小红买3个苹果和4个桃子花了18元小明买2个苹果和3个桃子花了13元。这两个方程是线性无关的每个方程都提供了独特的信息它们组成的方程组其系数矩阵的秩为2因此我们可以解出苹果和桃子的单价。情景B小红买3个苹果和4个桃子花了18元小明买6个苹果和8个桃子花了36元。此时第二个方程只是第一个方程的两倍它没有提供任何新信息这两个方程是线性相关的。它们组成的方程组其系数矩阵的秩为1我们无法解出唯一的解。将这个概念延伸到矩阵上一个全零矩阵 [0000]不包含任何信息其秩为0。一个单位矩阵 [1001]的两行/两列完全不同信息量最大其秩为2满秩。一个矩阵 [1224]第二行只是第一行的2倍信息是重复的其秩为1低秩。 为什么LoRA可以利用“低秩”特性LoRA技术有效的核心基于一个深刻的洞察大型预训练模型在适应下游任务时其权重的变化量 ΔW具有“低秩属性”。这意味着尽管权重矩阵 W本身可能非常大例如 4096×4096但微调所需的有意义的更新方向即 ΔW中那些线性无关的列/行其实非常少。ΔW矩阵中充满了冗余信息其内在的“有效维度”或“内在维度”很低。因此我们不需要用一个完整的、拥有 4096×4096约1678万个参数的矩阵来表示 ΔW。我们可以用一个低秩分解来近似它ΔWBA 其中A的维度是 r×nB的维度是 m×r而秩 r是一个远小于 m和 n的值通常为4, 8, 16等。通过这种方式需要训练的参数量从 m×n锐减至 r×(mn)。当 r很小时参数量显著减少。例如对于一个 4096×4096的权重矩阵当 r8时参数量从1678万降至 8×(40964096)65536仅为原来的约0.39%。AI 感兴趣的小伙伴可以加我微信LHYYH0001交流哦更多推荐工信部 · AIGC证书https://www.yuque.com/lhyyh/ai/ins6gx3o7hck7shbAI 工具集导航https://tools.lhagi.com/AI 大模型全栈 60 万字知识库本公众号对话框零门槛领取3 年打磨全是精华从普通职场人士到大模型算法应有尽有AI时代未来的就业机会在哪里答案就藏在大模型的浪潮里。从ChatGPT、DeepSeek等日常工具到自然语言处理、计算机视觉、多模态等核心领域技术普惠化、应用垂直化与生态开源化正催生Prompt工程师、自然语言处理、计算机视觉工程师、大模型算法工程师、AI应用产品经理等AI岗位。掌握大模型技能就是把握高薪未来。那么普通人如何抓住大模型风口AI技术的普及对个人能力提出了新的要求在AI时代持续学习和适应新技术变得尤为重要。无论是企业还是个人都需要不断更新知识体系提升与AI协作的能力以适应不断变化的工作环境。因此这里给大家整理了一份《2025最新大模型全套学习资源》包括2025最新大模型学习路线、大模型书籍、视频教程、项目实战、最新行业报告、面试题等带你从零基础入门到精通快速掌握大模型技术由于篇幅有限有需要的小伙伴可以扫码获取1. 成长路线图学习规划要学习一门新的技术作为新手一定要先学习成长路线图方向不对努力白费。这里我们为新手和想要进一步提升的专业人士准备了一份详细的学习成长路线图和规划。2. 大模型经典PDF书籍书籍和学习文档资料是学习大模型过程中必不可少的我们精选了一系列深入探讨大模型技术的书籍和学习文档它们由领域内的顶尖专家撰写内容全面、深入、详尽为你学习大模型提供坚实的理论基础。书籍含电子版PDF3. 大模型视频教程对于很多自学或者没有基础的同学来说书籍这些纯文字类的学习教材会觉得比较晦涩难以理解因此我们提供了丰富的大模型视频教程以动态、形象的方式展示技术概念帮助你更快、更轻松地掌握核心知识。4. 大模型项目实战学以致用当你的理论知识积累到一定程度就需要通过项目实战在实际操作中检验和巩固你所学到的知识同时为你找工作和职业发展打下坚实的基础。5. 大模型行业报告行业分析主要包括对不同行业的现状、趋势、问题、机会等进行系统地调研和评估以了解哪些行业更适合引入大模型的技术和应用以及在哪些方面可以发挥大模型的优势。6. 大模型面试题面试不仅是技术的较量更需要充分的准备。在你已经掌握了大模型技术之后就需要开始准备面试我们将提供精心整理的大模型面试题库涵盖当前面试中可能遇到的各种技术问题让你在面试中游刃有余。为什么大家都在学AI大模型随着AI技术的发展企业对人才的需求从“单一技术”转向 “AI行业”双背景。企业对人才的需求从“单一技术”转向 “AI行业”双背景。金融AI、制造AI、医疗AI等跨界岗位薪资涨幅达30%-50%。同时很多人面临优化裁员近期科技巨头英特尔裁员2万人传统岗位不断缩减因此转行AI势在必行这些资料有用吗这份资料由我们和鲁为民博士(北京清华大学学士和美国加州理工学院博士)共同整理现任上海殷泊信息科技CEO其创立的MoPaaS云平台获Forrester全球’强劲表现者’认证服务航天科工、国家电网等1000企业以第一作者在IEEE Transactions发表论文50篇获NASA JPL火星探测系统强化学习专利等35项中美专利。本套AI大模型课程由清华大学-加州理工双料博士、吴文俊人工智能奖得主鲁为民教授领衔研发。资料内容涵盖了从入门到进阶的各类视频教程和实战项目无论你是小白还是有些技术基础的技术人员这份资料都绝对能帮助你提升薪资待遇转行大模型岗位。大模型全套学习资料已整理打包有需要的小伙伴可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】