LoRA 微调的秩怎么定才合适?ℓp-LoRA 正则化自动分配秩方法解析
LoRA 微调中每个适配矩阵的秩直接决定参数量与容量,但手工设秩费时费力。本文解读 ℓp-LoRA:用 ℓp 正则化(0<p<1)对每个秩一分量施加能量惩罚,让冗余分量自动消失,在 DeBERTaV3-base 与 Qwen2.5-7B 上以初始秩一半的预算取得与最优 baseline 相当甚至更优的精度。
**低秩自适应(LoRA)**已经成为大模型参数高效微调的主流方法,但它在实际使用中有一个绕不开的"手调旋钮":**每个适配矩阵的秩(rank)该设多少?**秩直接决定了下游可训练参数量与模型容量——设小了容量不足、学不动任务,设大了参数冗余、显存吃不消。现有方法(如 AdaLoRA)大多靠手工设计的重要性分数来分配秩,缺少一个从优化目标里自然长出来的判据。来自 Zebang Xie、Chuanyang Zheng、Yik-Chung Wu 与 Yihang Gao 的论文《Automatic Rank Allocation for Low-Rank Adaptation in Large Language Models via lp Regularization》(arXiv:2609.28998)提出 ℓp-LoRA:用 ℓp 正则化(0<p<1)对每个秩一分量的能量施加惩罚,让冗余分量在训练中自动消失,从而把"定秩"从经验活变成优化问题的一部分。
LoRA 定秩为什么是个难题
先回顾一下 LoRA 的结构。LoRA 把权重更新量 ΔW 分解为两个低秩矩阵的乘积,秩 r 就是这条"低秩瓶颈"的宽度。秩越大,可训练参数越多、拟合能力越强,但计算与显存开销也线性上升。
问题的关键在"按需分配":不同层、不同任务对容量的需求差异巨大,一个统一的秩往往顾此失彼。于是出现了自适应秩分配(adaptive-rank)这类方法,它们试图给重要的层分配更高的秩、给不重要的层压缩秩。但论文作者点出了这类方法的共同软肋:它们的"重要性分数"大多是人设计的启发式指标,并非从优化目标推导而来,因此对不同的任务、模型往往需要重新调参,普适性有限。
方法:用 ℓp 正则化让冗余分量自己消失
ℓp-LoRA 的核心思路很简洁:既然秩就是"保留多少个秩一分量",那就让优化目标自己决定哪些分量该留、哪些该裁。
- 对每个秩一分量施加能量惩罚:LoRA 的 ΔW 可以看成若干秩一分量(rank-one component)的叠加。ℓp-LoRA 对每个分量的"能量"施加 ℓp 正则化(0<p<1),这一项是信号处理与统计里经典的诱导稀疏(sparsity-inducing)技术——它会温和地鼓励冗余分量的能量趋向于零,同时保住真正重要的分量。
- 把矩阵优化降成二维问题:作者推导了对应的近端子问题(proximal subproblem),并发现对每个分量而言,矩阵层面的优化可以化简为一个二维的标量问题,用二分法或牛顿法就能高效求解。
- 隐式阈值判据:由此得到一个隐式阈值化准则(implicit thresholding)——如果某个分量的最优解退化到零,就把它识别为可裁剪的冗余分量;否则保留。整个过程不需要任何人工设计的重要性分数。
值得强调的是,ℓp-LoRA 不替换原本的优化器。LoRA 因子仍按常规训练更新,只是周期性调用上述阈值化判据去识别并裁掉冗余分量。这让它能无缝嵌入现有的微调流程,几乎不增加工程负担。
实验结果:一半秩预算跑出不逊色甚至更优的成绩
论文在两组不同规模的任务上做了系统对比,统一约定最终秩预算为初始秩的一半,ℓp-LoRA 取 p=0.5,所有结果报告 5 个随机种子的均值。
在**自然语言理解(NLU)**任务上,使用 DeBERTaV3-base 在 GLUE 基准(CoLA、RTE、MRPC、STS-B)评测,对比 LoRA、AdaLoRA、IGU-LoRA 三个 baseline:
| 方法 | CoLA | MRPC | RTE | STS-B |
|---|---|---|---|---|
| LoRA | 69.10 | 90.10 | 87.40 | 91.82 |
| AdaLoRA | 70.57 | 90.24 | 87.81 | 91.94 |
| IGU-LoRA | 69.98 | 89.37 | 88.22 | 91.78 |
| ℓp-LoRA | 69.61 | 91.32 | 88.45 | 91.36 |
ℓp-LoRA 在 MRPC、RTE 两个任务上取得最佳,其余任务也保持竞争力。
在**问答(QA)**任务上,使用 Qwen2.5-7B 在 BoolQ、ARC-Easy、OpenBookQA、CommonsenseQA(CSQA)四个数据集评测:
| 方法 | BoolQ | ARC-Easy | OpenBookQA | CSQA |
|---|---|---|---|---|
| LoRA | 89.25 | 92.39 | 91.72 | 86.37 |
| AdaLoRA | 89.42 | 92.95 | 92.20 | 85.90 |
| IGU-LoRA | 89.31 | 92.74 | 90.52 | 85.49 |
| ℓp-LoRA | 90.20 | 92.17 | 91.12 | 86.39 |
ℓp-LoRA 在 BoolQ 与 CommonsenseQA 上取得最佳,BoolQ 上相对 LoRA 提升了约 1 个百分点。整体看,在只保留一半秩预算的前提下,ℓp-LoRA 与最强 baseline 打平甚至在多个任务上更优——这印证了它确实在"用更少的容量做同样的事",而非靠堆参数量取胜。
行业启示
这篇工作对"基座模型微调"方向的价值在于把秩分配从经验活变成了可推导、可自动化的优化环节。
对大模型微调落地而言,秩往往是最让工程团队纠结的超参之一:模型越大、任务越多样,手工逐层调秩的成本就越高。ℓp-LoRA 给出了一条"让正则化自己决定秩"的路子——在训练中自动压缩冗余容量、保住关键容量,既省显存又稳精度。对做领域适配训练、需要在多业务模型间反复微调的团队来说,这种"不用每次重新扫秩"的方法能显著降低调参成本。当然也要看到,论文目前主要在 DeBERTaV3-base 与 Qwen2.5-7B 规模上验证,且 p、λ 等超参的敏感性尚未充分展开;能否在更大规模基座上稳定复现,仍是后续值得关注的方向。
相关问题
Q:LoRA 微调的秩设大了或设小了会怎样?
A:秩决定 LoRA 适配矩阵的容量与可训练参数量。设小了容量不足、模型学不动任务;设大了参数冗余、计算和显存开销上升。理想做法是按层、按任务"按需分配",而不是全模型用一个统一的秩。
Q:ℓp-LoRA 是怎么自动决定秩的?
A:它不靠人工重要性分数,而是对 LoRA 每个秩一分量的能量施加 ℓp 正则化(0<p<1),借助这一项的稀疏诱导特性让冗余分量能量趋向于零;再通过推导出的隐式阈值化准则识别并裁掉这些退化分量,从而实现自动秩分配。
Q:ℓp-LoRA 会降低微调后的模型精度吗?
A:不会。论文在 DeBERTaV3-base(NLU)和 Qwen2.5-7B(问答)上验证,在只保留初始一半秩预算的前提下,ℓp-LoRA 在 MRPC、RTE、BoolQ、CSQA 等任务上取得最佳或与最强 baseline 相当的成绩,说明它能用更少容量维持甚至提升精度。
参考文献
📄 论文原文信息
| 论文标题 | Automatic Rank Allocation for Low-Rank Adaptation in Large Language Models via lp Regularization |
| 作者 | Zebang Xie, Chuanyang Zheng, Yik-Chung Wu, Yihang Gao |
| 期刊 | arXiv preprint arXiv:2609.28998 (cs.LG) |
| 发表时间 | 2026-09-24 |
| DOI | 10.48550/arXiv.2609.28998 |
论文原文信息地址:https://www.simolm.com/blog/2026-09-30-lp-lora-rank-allocation/