免费POC, 零成本试错
AI知识库

53AI知识库

学习大模型的前沿技术与行业应用场景


我要投稿

LoAR做Fine-Tuning微调原理到底是什么?

发布日期:2025-11-19 22:37:50 浏览次数: 1514
作者:君君AI

微信搜一搜,关注“君君AI”

推荐语

LoRA微调技术揭秘:如何用低成本实现大模型能力升级?

核心内容:
1. 大模型微调的必要场景与替代方案对比
2. LoRA技术原理图解:低秩矩阵的旁路训练机制
3. 矩阵分解思想在参数优化中的实际应用

杨芳贤
53AI创始人/腾讯云(TVP)最具价值专家
目前模型微调在大模型垂直领域有着广泛的应用,尤其LoAR方式的微调。本期就给大家介绍LoAR微调的原理。
什么时候才微调?
在大模型应用开发过程中,遇到大模型解决不了的问题时就需要微调吗?答案显而易见。最简单的方式当然是提示词工程,因为大模型就是一个装了压缩几十TB数据的“类人脑”,知识储备囊括各个方面且普遍具有Function Calling和MCP的能力,只要给他高质量的提示词,它能完成大部分任务。遇到提示词工程也无法解决的超过大模型知识范围的情况时,例如大模型无法获取最新的资讯或专业领域较深的知识时(缺乏背景知识),还可以给大模型补充知识,即RAG技术。当以上两种方式都没法解决问题时,可能就是大模型能力的问题,当我们需要让大模型具备或增强某项能力时,才需要微调
LoRA微调的核心思想和原理
我们知道像GPT、DeepSeek这样的大模型有数十亿参数,直接微调所有参数(全量微调)需要巨大的计算资源和存储空间,成本非常高。LoRA(Low-Rank Adaptation,低秩自适应)假设模型微调过程中的权重更新(ΔW)具有“内在的低秩特性”,我们不改变模型原有的巨大权重矩阵 W。而是在其旁边增加一个小的“旁路”,通过训练这个旁路来间接影响原始权重。如下图,蓝色部分是预训练模型(或者说基座模型),A 和 B 是两个小的、低秩的矩阵。A负责降维,B负责升维。BA 合在一起就构成了对原始权重的更新 ΔW。这个ΔW就是一个低秩矩阵。微调时,我们只训练 A 和 B 这两个小矩阵,最后只需保存它们,推理时再合并到 W 中即可。
什么是低秩矩阵?
“秩”就表示矩阵中“独一无二”、“无法被其他数据组合所替代”的基础信息的最小数量。秩越低,说明冗余度越高,可压缩性越强。下图中,左侧的矩阵中几乎每个数字都不一样,秩就高,而右侧的矩阵,第n+1行是第n行对应列2倍,我们只需要记住第一行和倍数就能还原整个矩阵,秩就低。
如何得到这个低秩矩阵?
首先我们了解什么是矩阵分解,我们假设一个场景:为海量的用户和电影进行推荐:为用户找到其感兴趣的电影推荐给他。用矩阵表示收集到的用户行为数据,12个用户,9部电影。

矩阵分解要做的是预测出矩阵中缺失的评分,使得预测评分能反映用户的喜欢程度,可以把预测评分最高的前K个电影推荐给用户了。

要从评分矩阵中分解出User矩阵和Item矩阵,只有左侧的评分矩阵R是已知的,User矩阵和Item矩阵是未知,学习出User矩阵和Item矩阵,使得User矩阵*Item矩阵与评分矩阵中已知的评分差异最小=> 最优化问题。(要得到User矩阵和Item矩阵,我们要先自行了解矩阵分解的目标函数和训练过程,目标函数最优化问题的工程解法,主要有交替最小二乘法(ALS)和随机梯度下降(SDG))。

对于这个场景问题,我们可以将电影分成动作、动画、爱情三个类别,用户的电影爱好体现在User向量上,观察Item矩阵,电影的风格也会体现在Item向量上,MF用user向量和item向量的内积去拟合评分矩阵中该user对该item的评分,内积的大小反映了user对item的喜欢程度。内积大匹配度高,内积小匹配度低。隐含特征个数k,k越大,隐类别分得越细,计算量越大。

某个用户u对电影i的预测评分= User向量和Item向量的内积把这两个矩阵相乘,就能得到每个用户对每部电影的预测评分了,评分值越大,表示用户喜欢该电影的可能性越大,该电影就越值得推荐给用户。

回到低秩矩阵,我们是将一个(12*9)的矩阵分解成(12*3)和(3*9)的矩阵,这里的“秩”(rank)就等于3,而这个(12*3)的矩阵就是图中的额A,(3*9)的矩阵就是图中B。A*B=ΔW即为LoRA模型。
Summary
LoRA在原始预训练模型旁边增加一个旁路,通过低秩分解(先降维再升维)来模拟参数的更新量,将原模型与降维矩阵A,升维矩阵B分开。训练阶段,只训练B和A,推理阶段,将BA加到原参数。

• 初始化,A采用高斯分布初始化,B初始化为全0,这样训练开始时旁路为0矩阵

• 多任务切换,当前任务W0+B1A1,将lora部分减掉,换成B2A2,即可实现任务切换

• 秩的选取:对于一般的任务,rank=1,2,4,8即可,如果任务较大,可以选择更大的rank。

假设原基座模型推理为h=Wx,使用LoRA模型后推理阶段变为h=Wx+BAx=(W+BA)x(从这里也能看出LoRA模型要和基座模型一起使用)。

下期我们就开始lora微调实操,展示几个微调案例,点个关注不迷路~

#LoRA #Fine-Tuning #大模型 #微调 #矩阵分解 #低秩矩阵 #Fine-Tuning微调 

53AI,企业落地大模型首选服务商

产品:场景落地咨询+大模型应用平台+行业解决方案

承诺:免费POC验证,效果达标后再合作。零风险落地应用大模型,已交付160+中大型企业

联系我们

售前咨询
186 6662 7370
预约演示
185 8882 0121

微信扫码

添加专属顾问

回到顶部

加载中...

扫码咨询