恒美微站 Logo 恒美微站
  • 首页
  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心
  • 联系我们

LoRA(Low-Rank Adaptation)模型核心基础知识

  • 首页
  • 资讯中心
  • /
  • LoRA(Low-Rank Adaptation)模型核心基础知识

相关资讯

从编程到生活:探索Python为何成为必备技能 2026/9/29 2:13:30
数据科学实战:跨越代码边界的探索 2026/9/29 2:13:30
图像识别与目标检测技术如何改变视觉应用 2026/9/29 2:13:30

最新资讯

在本地养一只 AI 龙虾:OpenClaw Agent 学习助理配置实践指南
如何在 DEV community 上发表 blog:用 TaoToken 统一 Key 打通写作与发布链路
Claude Code 安装与实战:5分钟上手终端 AI 编程助手
DeepSeek本地化部署+医疗文本结构化:数据不出院的隐私方案
Cursor反复调试不过?用这套提问框架让AI编程助手真正靠谱
AI编程工具Cursor实战:用TaoToken统一Key接入并验证配置文件

今日推荐

开源模型端侧落地实战:量化、推理加速与Agent上下文管理
AI Evals实战指南:从零搭建LLM应用评估体系与CI/CD集成
Java采购管理系统实战:从数据库设计到事务一致性

本周热门

从像素到笔画:srt-whiteboard-animation骨架笔迹追踪实现(Zhang-Suen细化+8邻接追踪)
网站建设的英语怎么说?别只背单词,看完这套安全完整流程才敢上线
新手入门看这篇:建设网站加盟避坑指南与SEO实操

本月精选

自研推理加速器Redwood:两周内实现PyTorch模型高效部署的实战教程
V4L2摄像头采集实战:从camera_client.rar到出图全流程解析
从“谁发明了钢琴键”到知识问答智能体:RAG与记忆工程实践

LoRA(Low-Rank Adaptation)模型核心基础知识

发布时间:2026/9/29 2:13:30
LoRA(Low-Rank Adaptation)模型核心基础知识 文章目录一、LoRA的背景与原理一LoRA的原理二LoRA矩阵的初始化二、LoRA与Stable Diffusion模型三、AdaLora和QLora一AdaLora的原理二QLora的原理三用途上的区别一、LoRA的背景与原理在预训练大规模模型时微调整个模型的参数可能会带来较大的计算和存储开销。对于像GPT-3这样的大型模型直接微调所有参数不仅非常耗时还需要大量的存储资源。一LoRA的原理LoRA的全称Low-Rank Adaptation of Large Language Models。它通过引入低秩矩阵分解在微调时不再调整原始模型的所有权重而是通过将权重矩阵分解成两个较小的低秩矩阵来表示权重的变化。对于主模型的权重矩阵W ∈ R d × k W \in \mathbb{R}^{d\times k}W∈Rd×kLoRA不微调W WW本身而是通过两个低秩矩阵A ∈ R d × r A\in \mathbb{R}^{d\times r}A∈Rd×r和B ∈ R r × k B\in \mathbb{R}^{r\times k}B∈Rr×k来近似微调权重矩阵。LoRA 的权重更新公式为W new W 0 α r Δ W W 0 α r ( A B T ) W_{\text{new}} W_0\frac{\alpha}{r}\Delta WW_0\frac{\alpha}{r}(AB^T)Wnew​W0​rα​ΔWW0​rα​(ABT)W new W_{\text{new}}Wnew​为微调后的权重矩阵W WW为预训练模型的原始权重矩阵保持不变α \alphaα是一个缩放因子用于调节低秩矩阵的影响r rr是秩的大小表示低秩矩阵A AA和B BB的维度通常r ≪ d , k r\ll d,kr≪d,k从而大大减少需要训练的参数数量假设原来的是100x1024的参数矩阵那么参数量为102400LoRA模型将矩阵拆成了两个矩阵相乘如果设置Rank8那么就是100x8的B矩阵与8x1024的A矩阵做矩阵乘法参数量为80081928992整体参数量下降了约11.39倍。LoRA可以应用在模型的多种层次结构如自注意力层、前馈网络层等广泛适用于各类Transformer模型。二LoRA矩阵的初始化在LoRA的实现中矩阵B初始化为零矩阵矩阵A使用随机高斯分布初始化这样做的主要目的是在微调开始时确保权重调整Δ W 0 \Delta W 0ΔW0是零矩阵从而稳定训练过程并保持模型在初始阶段的表现与预训练模型一致。使用随机高斯分布初始化矩阵A可以确保它具有丰富的表示能力使得低秩矩阵A B T AB^TABT能够探索广泛的权重调整空间。同时也可以防止梯度更新过程中出现梯度消失的问题初始化时提供的非零梯度信息可以加速收敛帮助模型更快地找到适应任务的最优参数。二、LoRA与Stable Diffusion模型LoRA可以作为stable diffusion模型的一种插件用于满足一种特定的风格或指定的人物特征属性我们可以使用SD模型LoRA微调训练的方式只训练参数量很小的LoRA模型就能在下游细分任务中取得不错的效果LoRA大幅降低了SD模型训练时的显存占用因为并不优化主模型SD所以主模型对应的优化器参数不需要存储。但计算量没有明显变化因为LoRA是在主模型的全参梯度基础上增加了“残差”梯度同时节省了主模型优化器更新权重的过程。训练逻辑步骤一冻结训练好的SD模型的权重步骤二在SD模型的U-Net结构中注入LoRA模块并将其与CrossAttention模块结合并只对这部分参数进行微调训练步骤三训练好新的参数后利用重参的方式将新参数和老的模型参数合并。三、AdaLora和QLora一AdaLora的原理AdaLoRAAdaptive Low-Rank Adaptation通过在微调模型时将权重矩阵分解为低秩矩阵并且引入了自适应调整低秩rank的机制。在此过程中模型在不同层可以根据梯度信息自适应地调整分配给每层的秩值。这个机制通过动态调整秩值在保持模型性能的同时有效减少了计算和内存需求。给定原始模型权重矩阵W WW。通过LoRA将其分解为两个低秩矩阵W ≈ W 0 Δ W W 0 A B T W\approx W_0\Delta W W_0AB^TW≈W0​ΔWW0​ABT其中W 0 W_0W0​是预训练模型的固定权重A ∈ R m × r A\in \mathbb{R}^{m\times r}A∈Rm×r和B ∈ R n × r B\in \mathbb{R}^{n\times r}B∈Rn×r分别是低秩矩阵r rr是低秩值。AdaLoRA引入的改进是通过自适应调整r rr来使得不同层的权重矩阵分解具有不同的秩值。具体来说使用 Frobenius 范数等指标来动态调整Δ r α ∥ ∇ W ∥ F ∑ i 1 L ∥ ∇ W i ∥ F \Delta r \alpha \frac{\| \nabla W\|_F}{\sum_{i1}^L\| \nabla W_i\|_F}Δrα∑i1L​∥∇Wi​∥F​∥∇W∥F​​Δ r \Delta rΔr表示在某一层上低秩分解矩阵的秩值r rr需要调整的量α \alphaα是一个调整系数用来控制变化量的比例∥ ∇ W ∥ F \| \nabla W\|_F∥∇W∥F​表示某层权重的梯度的Frobenius范数即对该层的权重矩阵W WW进行梯度更新时的变化量的度量它衡量了在当前训练步骤中这一层的权重矩阵被更新的程度∑ i 1 L ∥ ∇ W i ∥ F \sum_{i1}^L\| \nabla W_i\|_F∑i1L​∥∇Wi​∥F​表示某层权重的梯度的Frobenius范数的总和用来归一化不同层之间的影响优势动态调整秩值减少了资源浪费同时保留了模型的强大性能适合用于大模型的微调过程。二QLora的原理QLoRAQuantized Low-Rank Adaptation结合了量化和 LoRA 的优势。它通过对模型进行4-bit 量化将模型权重的精度降低从而显著减少计算和存储需求。随后QLoRA 在量化后的模型上应用 LoRA 微调技术保持低秩矩阵分解的效率和适应性。量化公式量化的核心思想是将模型的权重W WW从高精度浮点数压缩到低精度表示。4-bit 量化的过程可以表示为W q round ( W − W m i n W m a x − W m i n ⋅ ( 2 4 − 1 ) ) W_q \text{round}(\frac{W-W_{min}}{W_{max}-W_{min}}\cdot (2^4-1))Wq​round(Wmax​−Wmin​W−Wmin​​⋅(24−1))虽然基座模型是 4-bit 的但为了保持训练效果计算过程并非全程低精度。QLoRA 对模型的不同部分采用了不同的精度策略基座模型冻结不更新以 4-bit NormalFloat (NF4) 格式存储。在前向和反向传播时会临时反量化Dequantize 为 16-bit BrainFloat (BF16) 精度参与计算但不计算针对基座权重的梯度LoRA 适配器可训练始终保持 16-bit 精度。反向传播时梯度仅计算并更新 LoRA 的权重即低秩矩阵 A 和 B。NormalFloatNF4一种改进的 4-bit 量化数据类型采用非对称的数据表示来优化量化精度。它将量化区间分为负数部分和正数部分每部分分别使用2 k − 1 2^{k-1}2k−1个分位数来表示其中k kk为位数在此为4。具体而言NF4 将数据区间[ 0 , 1 ] [0,1][0,1]划分为8个部分将[ 0 , 1 ] [0,1][0,1]分为9个部分从而生成总共16个分位数。所以 NF4 有 16 个量化级别。分位数的计算分位数用于定义每个量化区间的边界。NF4 量化通过分位数函数来计算这些边界确保量化区间内的数据分布尽可能均匀。对于标准正态分布分位数函数Q X ( ⋅ ) Q_X(\cdot)QX​(⋅)是标准正态分布的分位数函数。q i 1 2 ∗ Q X ( i 2 k 1 ) Q X ( i 1 2 k 1 ) q_i\frac{1}{2}*Q_X(\frac{i}{2^k1})Q_X(\frac{i1}{2^k1})qi​21​∗QX​(2k1i​)QX​(2k1i1​)NF4的优势让每个量化区间包含等量权重0 附近区间窄量化更精细两端区间宽合理覆盖理论保证对于正态分布数据NF4 是信息论最优的 4-bit 量化分位数量化使量化误差最小。三用途上的区别AdaLoRA用于模型微调适合用于训练阶段尤其是在对大语言模型进行任务特定微调时能够高效利用计算资源。通过动态调整秩值它能够针对不同任务自适应地分配计算能力提升微调效果。QLoRA 用于模型部署 主要用于模型的低资源部署场景。通过 4-bit 量化它显著减少了大模型的计算和存储需求允许在硬件限制较多的环境中运行大模型。同时结合 LoRA 微调QLoRA 保证了模型的任务性能不会因量化而大幅下降。参考深入浅出完整解析LoRA(Low-Rank Adaptation)模型核心基础知识什么是LoRA模型如何使用和训练LoRA模型你想要的都在这图像生成SD LoRA模型详解

关于恒美微站

恒美微站专注于为个体商户、工作室提供极简自助建站服务,让每个人都能轻松拥有专业网站。

快速链接

  • 关于我们
  • 建站服务
  • 主题模板
  • 案例展示
  • 资讯中心

服务项目

  • 可视化建站
  • 拖拽编辑
  • 主题定制
  • SEO 优化
  • 网站托管

联系方式

  • 📍 地址:北京市朝阳区建国路 88 号
  • 📞 电话:400-888-8888
  • ✉️ 邮箱:info@hmyw.cn
  • 🕐 时间:周一至周日 9:00-18:00

© 2024 恒美微站 hmyw.cn 版权所有 | 京 ICP 备 12345678 号