前言

在大模型参数规模已突破千亿的当下,全参数微调已然成为资源密集型任务的典型代表。单张GPU难以承受巨大的显存压力,而多卡训练所耗费的时间与资金成本,更让许多中小企业望而却步。

而LoRA(Low Rank Adaptation)技术以“冻结大模型、训练小参数”的核心思路,通过精妙的,矩阵变换,实现了“以小博大”的高效微调,成为大模型产业落地的关键支撑。

本文将从数学原理、矩阵变换、训练机制(含权重冻结细节)到跨层适配,全方位拆解这一主流PEFT技术的核心逻辑。

1、LoRA的核心原理:用低秩矩阵破解全量更新难题

LoRA的本质,是对大模型权重更新量的“降维打击”。其核心洞察,源于一个关键发现:大模型在适配特定任务时,权重矩阵的更新量ΔW,具有低内在秩(Low Intrinsic Rank)特性也就是任务适配无需调整所有参数,仅需聚焦于少数关键维度的更新方向。

1.数学原理:从全秩更新到低秩分解

在全参数微调中,模型权重更新公式为:

其中是

预训练模型的原始权重矩阵(d和k分别为输入输出维度),DeltaW是与W同维度的全秩更新矩阵,参数量高达dtimesk(以4096维度的Transformer层为例,单矩阵参数量约1680万)。

而LoRA通过低秩分解对DeltaW进行重构,将其表示为两个低秩矩阵的乘积:

其中,

参数压缩效果:以d=k=4096、r=8为例全秩更新需1680万参数,而LoRA仅需rx(d+k)=8x(4096+4096)=65536,参数压缩比达256:1。

2.前向计算逻辑:不增加推理延迟的关键

LoRA的前向计算并未改变原始模型的结构,仅在目标层添加低秩分支的输出:

其中x为输入向量,h 最终输出。因在训练时将W冻结仅对A和B进行更新,于是推理时能直接把并入原始权重W里,从而构成新权重W’=W+BA,此过程完全不会增添推理延迟——这就是LoRA相较于Adapter等技术的关键优势之一。

2、矩阵变换拆解:从维度压缩到特征融合的完整路径

LoRA的核心魔法,本质是通过两次低秩矩阵变换,用小参数模拟大矩阵的任务适配能力。以下结合Transformer核心层(MHA/FFN)的矩阵运算,逐步骤拆解LoRA的矩阵变换过程。

1.Transformer层的原始矩阵运算(统一符号定义)

以dmodel=4096(模型隐藏层维度)为例Transformer层的核心矩阵运算集中在MHA和FFN模块:

  • MHA层(以Query矩阵为例)

Query向量由输入x与预训练权重矩阵x与预训练权重矩阵x与预训练权重矩阵WQ相乘得到:

Q = x . WQ

  • FFN层(以第一层线性变换为例)

FFN第一层将特征维度从dmodel扩张到4dmodel:

FFNmid = x . Wffn1

2.LoRA的三步矩阵变换

LoRA通过“压缩–>映射–>融合”三步在原始矩阵运算中插入低秩分支:

  • 第一步:低秩压缩(矩阵A的作用)

  • 第二步:低秩映射(矩阵B的作用)

  • 第三步:特征融合(与原始输出相加)

3.MHA与FFN层的LoRA矩阵变换对比

对比项 MHA 层(以 Query 矩阵WQ)为例) FFN 层(以第一层Wffn1为例)
原始权重矩阵维度 4096 x 4096(约 1680 万参数) 4096 x 16384(约 6710 万参数)
LoRA 矩阵A维度 8 x 4096(输入投影,压缩维度) 8 x 4096(同左)
LoRA 矩阵B维度 4096 x 8(输出投影,还原至 4096 维) 16384 x 8(还原至 16384 维)
LoRA 参数量(A+B) 6.5 万(压缩比 256:1) 16.4 万(压缩比 410:1)
核心作用 修正 Query 的 “查询方向”,聚焦任务关键信息(如法律任务的 “法条关键词”) 优化特征扩张能力,强化任务特异性映射(如医疗的 “病灶 - 症状” 关联)

3、LoRA的训练机制:从权重冻结到A、B矩阵的优化全流程

LoRA训练的核心是冻结原始权重,仅优化A和B矩阵,最终通过两者的乘积得到DeltaW。这一过程的关键在于“如何冻结原始权重”以及“如何让A、B矩阵单独学习任务特征”,具体可拆解为四个步骤:

1.权重冻结:通过requires_grad控制参数可训练性

“冻结原始权重”,这是LoRA实现“小参数微调”的前提其技术本质在于借助深度学习框架的参数属性控制手段,使预训练模型的原始权重无需参与梯度的计算以及更新。

在PyTorch等框架中,每个参数都有requires_grad属性(布尔值):

  • 当requires_grad=False时:参数在反向传播中不计算梯度,优化器也不会更新它即“冻结

  • 当requires_grad=True时:参数会被计算梯度并被优化器更新(即“可训练")

实现代码示例(以Hugging Face模型为例):

from transformers import AutoModelForCausalLM# 1. 加载预训练模型model = AutoModelForCausalLM.from_pretrained("THUDM/chatglm3-6b")# 2. 冻结原始权重:遍历所有原始参数,设置requires_grad=Falsefor param in model.parameters():    param.requires_grad = False# 原始权重不再更新# 3. 插入LoRA的A、B矩阵(自动设为requires_grad=True)from peft import LoraConfig, get_peft_modellora_config = LoraConfig(target_modules=["query", "value"], r=8)model = get_peft_model(model, lora_config)# 验证:仅A、B矩阵可训练(占比通常<0.1%)model.print_trainable_parameters() # 输出示例:"trainable params: 65,536 || all params: 6,245,533,696 || trainable%: 0.00105"

冻结的必要性:

  • 保留预训练能力:原始权重,它包含着海量数据所学到的通用知识,(例如语言理解、逻辑推理等),将其冻结之后,便可避免被小任务数据“冲淡”;

  • 降低计算成本:原始权重参数量,通常为数十亿级别的规模,在冻结之后,其梯度计算量减少了99%甚至更多,显存占用也降低了80%以上。

2.初始化:让LoRA分支“初始无影响”

为保证训练起点与预训练模型一致,A和B的初始化,遵循严格的规则:

  • A矩阵:用随机正态分布N(0, 0.01)初始化确保初始时仅引入微小扰动;

  • B矩阵:用零矩阵来进行初始化,在这个时候,

    模型所输出的结果完全等同于预训练模型,这样就能避免初始时产生过大的扰动

3.前向计算与反向传播:仅A、B矩阵参与梯度更新

每一轮训练中,输入x同时经过原始分支和LoRA分支:

计算损失(如交叉熵)后执行反向传播(loss.backward()):

  • 原始权重因requires_grad=False,不计算梯度(梯度始终为None

  • A、B矩阵因requires_grad=True,会被计算梯度

4.参数更新:优化器仅调整A、B矩阵

优化器仅接收A、B矩阵的参数(可训练参数),确保原始权重不被更新:

import torch.optim as optim# 仅传入可训练参数(A、B矩阵)optimizer = optim.AdamW(model.parameters(), lr=1e-4)# 训练循环for batch in train_dataloader:    outputs = model(** batch)    loss = outputs.loss    loss.backward() # 仅A、B矩阵产生梯度    optimizer.step() # 仅更新A、B矩阵    optimizer.zero_grad() # 清空A、B矩阵的梯度

随着迭代,A矩阵与B矩阵逐渐进行优化,DeltaW=B.A这一情况不断逼近“任务所需要的最为优的权重更新”,最终达成了模型的适配。

4、跨层与跨结构适配:LoRA在Transformer中的应用范围

LoRA的A、B矩阵对可灵活应用于Transformer的不同层和结构,核心是适配“含MHA和FFN的子层”,与模型是encoder、decoder还是encoder-decoder结构无关。

1.目标层选择:MHA优先,FFN为辅

  • MHA层:最核心的目标层,尤其是Query(Q)和Value(V)矩阵

原因:Q矩阵决定了“注意力聚焦方向”,V矩阵决定了“提取的价值信息”,这两者直接影响着任务适配效果。(例如在生成任务中,Q需要关注输入关键词,而V需要编码与任务相关的语义

  • FFN层:次选目标层,用于强化特征的非线性转换能力

适用场景:复杂任务,(例如多模态生成,以及领域知识密集型任务),需要补充并优化特征的扩张与压缩逻辑。

  • 配置方式:通过target_modules参数指定,例如:
# 仅MHA的Q/V矩阵(推荐基础配置)LoraConfig(target_modules=("q_proj", "v_proj"), r=8)# MHA+FFN(复杂任务配置)LoraConfig(target_modules=("q_proj", "v_proj", "fc1"), r=16)

2.跨结构适配:encoder与decoder均适用

Transformer的encoder和decoder均由“MHA, FFN”子层堆叠而成,LoRA可无缝适配:

  • Encoder-only模型(如BERT):

应用于自注意力MHA的QKV矩阵,轻松愉快地优化输入文本的特征编码(例如在情感分类任务中,使模型更为专注于情感词)。

  • Decoder-only模型(如GPT)

应用于因果自注意力MHA的Q/V矩阵,轻松愉快地优化生成逻辑(例如在对话任务中,使模型能更紧密地贴合上下文语境)。

  • Encoder-decoder模型

这个时候应用于encoder的MHA(优化输入理解)和decoder的“编码器-解码器注意力”(优化输入-输出对齐),提升翻译、摘要等任务的精度。

5、总结:满满干货和建议

LoRA的核心价值在于以极低的参数成本实现大模型的高效适配,其技术逻辑可浓缩为三个关键点:

1.数学本质:通过低秩分解DeltaW=B.A,用两个小矩阵的乘积模拟全秩权重更新,参数压缩比达256:1以上;

2.训练核心:通过“requires_grad=False”来冻结原始权重(在保留通用能力的同时,降低成本),仅仅对A、B矩阵进行优化,从而使低秩子空间能够聚焦于任务特征;

3.应用灵活:适配Transformer的MHA/FFN层,无论是encoder,还是decoder,均可以应用。Q/V矩阵是最为理想的目标,既能顾及效果,又能兼顾效率。

未来随着动态秩调整、跨模型迁移等技术持续地发展,LoRA将从“单任务微调工具”,一步步地升级为“大模型能力组装平台”。对于开发者来说,牢牢地掌握LoRA的矩阵变换逻辑以及权重冻结机制,这乃是降低大模型使用门槛的关键之处。

最后

为什么要学AI大模型

当下,⼈⼯智能市场迎来了爆发期,并逐渐进⼊以⼈⼯通⽤智能(AGI)为主导的新时代。企业纷纷官宣“ AI+ ”战略,为新兴技术⼈才创造丰富的就业机会,⼈才缺⼝将达 400 万!

DeepSeek问世以来,生成式AI和大模型技术爆发式增长,让很多岗位重新成了炙手可热的新星,岗位薪资远超很多后端岗位,在程序员中稳居前列。

在这里插入图片描述

与此同时AI与各行各业深度融合,飞速发展,成为炙手可热的新风口,企业非常需要了解AI、懂AI、会用AI的员工,纷纷开出高薪招聘AI大模型相关岗位。
在这里插入图片描述
最近很多程序员朋友都已经学习或者准备学习 AI 大模型,后台也经常会有小伙伴咨询学习路线和学习资料,我特别拜托北京清华大学学士和美国加州理工学院博士学位的鲁为民老师给大家这里给大家准备了一份涵盖了AI大模型入门学习思维导图、精品AI大模型学习书籍手册、视频教程、实战学习等录播视频 全系列的学习资料,这些学习资料不仅深入浅出,而且非常实用,让大家系统而高效地掌握AI大模型的各个知识点。

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

AI大模型系统学习路线

在面对AI大模型开发领域的复杂与深入,精准学习显得尤为重要。一份系统的技术路线图,不仅能够帮助开发者清晰地了解从入门到精通所需掌握的知识点,还能提供一条高效、有序的学习路径。

img

但知道是一回事,做又是另一回事,初学者最常遇到的问题主要是理论知识缺乏、资源和工具的限制、模型理解和调试的复杂性,在这基础上,找到高质量的学习资源,不浪费时间、不走弯路,又是重中之重。

AI大模型入门到实战的视频教程+项目包

看视频学习是一种高效、直观、灵活且富有吸引力的学习方式,可以更直观地展示过程,能有效提升学习兴趣和理解力,是现在获取知识的重要途径

在这里插入图片描述
光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述

海量AI大模型必读的经典书籍(PDF)

阅读AI大模型经典书籍可以帮助读者提高技术水平,开拓视野,掌握核心技术,提高解决问题的能力,同时也可以借鉴他人的经验。对于想要深入学习AI大模型开发的读者来说,阅读经典书籍是非常有必要的。
在这里插入图片描述

600+AI大模型报告(实时更新)

这套包含640份报告的合集,涵盖了AI大模型的理论研究、技术实现、行业应用等多个方面。无论您是科研人员、工程师,还是对AI大模型感兴趣的爱好者,这套报告合集都将为您提供宝贵的信息和启示。
在这里插入图片描述

AI大模型面试真题+答案解析

我们学习AI大模型必然是想找到高薪的工作,下面这些面试题都是总结当前最新、最热、最高频的面试题,并且每道题都有详细的答案,面试前刷完这套面试题资料,小小offer,不在话下
在这里插入图片描述

在这里插入图片描述

这份完整版的大模型 AI 学习资料已经上传CSDN,朋友们如果需要可以微信扫描下方CSDN官方认证二维码免费领取【保证100%免费

Logo

魔乐社区(Modelers.cn) 是一个中立、公益的人工智能社区,提供人工智能工具、模型、数据的托管、展示与应用协同服务,为人工智能开发及爱好者搭建开放的学习交流平台。社区通过理事会方式运作,由全产业链共同建设、共同运营、共同享有,推动国产AI生态繁荣发展。

更多推荐