跳到主内容
快讯直播
AI智模界
AI 词典

DoRA:把权重拆成幅度和方向的微调法

一句话定义:DoRA(Weight-Decomposed Low-Rank Adaptation,权重分解低秩适配)是一种大模型微调方法,它把预训练权重拆成“幅度”和“方向”两部分分别学习,在低秩(rank 开得很小)时通常比 LoRA 更稳、效果更好。

原理:把一根箭头拆成“长度”和“朝向”

把神经网络里的一层权重想象成一排箭头。每支箭头只由两件事决定:它有多长(幅度),它指向哪(方向)。微调,就是让这排箭头重新摆放,好适应新任务。

LoRA 的做法是“不动原箭头,另加一个低秩修正量”,但在这个修正量里,长度和方向是搅在一起学的——想改朝向,长度也跟着乱动,容易顾此失彼。

DoRA 换了个思路:先把原始权重按列拆开,每列的“长度”抽成一个可训练向量 m,“方向”则归一化出来,组成方向矩阵 V。接着只对 V 做 LoRA 式的低秩更新,同时把 m 当作一组很短的参数一起训练。整个结构初始化成和原权重完全等价,所以训练刚开始时模型的原有能力一点没被破坏。

打个比方:LoRA 像一个把“音量”和“音色”焊死在同一个推子上的调音台,你只能整体推;DoRA 把它拆成两个独立旋钮,音量和音色各调各的。

和 LoRA 的区别

LoRADoRA
学什么直接学低秩增量 ΔW = BA先拆出幅度向量 m,再对方向矩阵做低秩更新
参数量只多两个低秩矩阵多两个低秩矩阵 + 一个幅度向量(很小)
低秩下的表现rank 很小时容易掉点通常更稳,更新形态更接近全量微调
推理开销可合并回原权重同样可合并,推理不变慢
训练开销较低略高,多一步分解计算

对从业者的意义

当你显存紧张、rank 只能往小里开的时候,DoRA 是值得先试的一档:多出来的参数和训练成本不大,换来的是低秩场景下更不容易“学不动”。如果你更看重生态支持广、工具链成熟、上手快,LoRA 依然是默认选择。

对普通职场人来说,这类方法的差别不会体现在使用体验上,而是体现在“同样一张显卡,能不能微调出更听话的模型”。具体哪些框架支持、参数怎么命名、默认值是多少,以官方页面为准。

AI 生成本文由 AI 基于公开信息自动生成,仅供参考。