@techNmak: 每个人都在微调LLMs。几乎没人知道模型内部到底在更新什么。这里有5个技术…
摘要
这篇文章解释了五种针对大型语言模型的参数高效微调技术,如LoRA和VeRA,详细说明了每种方法如何以最小的更新来适应模型权重。
查看缓存全文
缓存时间: 2026/08/27 05:33
每个人都在微调大语言模型。 但几乎没人真正理解模型内部到底更新了什么。
以下是5种改变你对模型适配认知的技术,以及它们对权重实际做了什么:
1./ LoRA - 学习更新量,而非权重本身 预训练权重W被冻结,完全不动。 不直接更新W,而是训练两个小矩阵 => A ∈ Rrxd 和 B ∈ Rdxr,其中r ≪ d 权重更新量:ΔW = BA 有效权重:W’ = W + BA
所有适配都在极小的低秩空间中完成,W从未改变。
2./ LoRA-FA - 如果冻结更多呢? 结构与LoRA相同,仅一处改动。 A与W一同被冻结,仅训练B。 有效权重:W’ = W + BA(A固定) 可训练矩阵数量是LoRA的一半,核心思想相同,参数更少。
3./ VeRA - 如果矩阵根本不需要学习? 这就有趣了。 A和B都被冻结且随机初始化。真正被训练的只是两个微型缩放向量 => b ∈ Rr 和 d ∈ Rr VeRA不学习低秩矩阵本身,而是冻结它们,通过学习小的缩放向量来调节其贡献。 初始化时=> b = 0,d = 1
你并非在学习矩阵,而是在学习如何缩放它们。 这是本列表中参数效率最高的技术之一。
4./ Delta-LoRA - 如果让W自己从低秩更新中学习? 这个从根本上不同。 与标准LoRA不同,基础权重W并非完全冻结,而是通过低秩delta传播在每一步更新 => W^(t+1) = W^t + c(B_(t+1)A_(t+1) − B_t A_t) 其中c是缩放因子。 A和B可训练,W在演变,但完全由低秩变化引导。
5./ LoRA+ - 相同结构,更智能的学习率。 与LoRA完全相同,冻结W,训练A和B。 一处改动=> 赋予B比A更大的学习率。η_B > η_A A ← A − η_A · ∂J/∂A B ← B − η_B · ∂J/∂B 这一微小优化能让LoRA训练更有效。
贯穿五者的共同理念: 你并非总需要完整微调来适配模型。 LoRA更新两个矩阵。 LoRA-FA更新一个。 LoRA+以不同速度更新两个。 Delta-LoRA让W在低秩delta引导下演变。 VeRA更新两个向量。
相同目标,对同一问题给出五种不同答案: => 我们实际需要学习的最小值是什么? 这就是参数高效微调的核心思想。 现在你知道模型内部到底发生了什么。
相似文章
@_rohit_tiwari_: 这本115页的书揭示了LLM微调的秘密。https://drive.google.com/file/d/1cS5sWZw9XUDRI4uRh02-28Xq4-P…
一本全面介绍大语言模型微调的115页指南,涵盖理论与实践。
@jbhuang0604: LoRA, low-rank adaptation, is arguably the most popular parameter-efficient fine-tuning method for LLMs. But how does i…
LoRA(低秩适配)是LLM最流行的参数高效微调方法,视频介绍了LoRA及其变体(LoRA+、QLoRA、VeRA、DoRA)的工作原理。
@Sumanth_077:训练大型LLM曾经慢得令人痛苦,但现在不同了!4个加速微调的开源库…
一条推文,重点介绍了四个开源库(Unsloth、LLaMA Factory、DeepSpeed、Axolotl),这些库通过内存和速度优化加速大型语言模型的微调。
大语言模型不确定性中的人类对齐、校准与激活模式
本文研究大语言模型的不确定性与人类不确定性的相似程度,探讨LLMs在多个数据集上的对齐、校准和激活模式,以及指令微调的影响。
降低LLM延迟
用于降低大语言模型延迟、提高推理速度的技术和方法。