当前位置: 首页 > news >正文

LoRA(Low-Rank Adaptation,低秩适应)

文章目录

      • LoRA 的核心原理
      • LoRA 在 Stable Diffusion 中的应用
        • **1. 作用位置**
        • **2. 优势**
        • **3. 代码中的实现**
      • LoRA 的典型使用场景
      • LoRA vs 其他微调方法

LoRA(Low-Rank Adaptation,低秩适应)是一种高效微调大模型的技术,主要用于在不显著增加计算资源的情况下,对预训练模型(如Stable Diffusion)进行轻量级适配。它的核心思想是通过低秩矩阵分解来减少可训练参数数量,从而实现对特定任务或风格的快速适配。


LoRA 的核心原理

  1. 低秩分解
    对原始权重矩阵 W ∈ R d × k W \in \mathbb{R}^{d \times k} WRd×k(例如Attention层的 Q / K / V Q/K/V Q/K/V矩阵),LoRA将其更新量 Δ W \Delta W ΔW分解为两个小矩阵的乘积:
    Δ W = B A 其中 B ∈ R d × r , A ∈ R r × k , r ≪ min ⁡ ( d , k ) \Delta W = BA \quad \text{其中} \quad B \in \mathbb{R}^{d \times r}, \ A \in \mathbb{R}^{r \times k}, \ r \ll \min(d,k) ΔW=BA其中BRd×r, ARr×k, rmin(d,k)

    • ( r ) 是秩(rank),通常取 4~64,远小于原矩阵维度。
    • 训练时只更新 A A A B B B,冻结原始权重 W W W
  2. 前向计算
    实际计算时,将原始输出加上低秩适配项:
    h = W x + Δ W x = W x + B A x h = Wx + \Delta W x = Wx + BAx h=Wx+ΔWx=Wx+BAx


LoRA 在 Stable Diffusion 中的应用

1. 作用位置

通常注入到UNet的交叉注意力层(Cross-Attention)和文本编码器中,例如:

  • to_qto_kto_v 投影矩阵
  • 输出投影矩阵 to_out[0]
2. 优势
  • 参数高效
    微调时仅需训练原模型参数的 0.1%~1%(例如SD模型原始参数约1B,LoRA可能只需1-10M参数)。
  • 即插即用
    训练后的LoRA权重(.safetensors文件)可独立于原模型加载/卸载。
  • 组合灵活
    多个LoRA权重可以叠加使用(需注意scale比例)。
3. 代码中的实现

在Stable Diffusion Pipeline中,LoRA相关逻辑主要通过:

  • StableDiffusionLoraLoaderMixin 类处理权重加载
  • scale_lora_layers()unscale_lora_layers() 控制适配强度
  • 通过 cross_attention_kwargs={"scale": lora_scale} 传递缩放因子

LoRA 的典型使用场景

场景说明
风格微调让模型学习特定艺术风格(如动漫、水彩)
主题适配适配特定对象(如特定角色、品牌logo)
可控生成增强对某些属性的控制(如光照、姿势)
多任务切换通过加载不同LoRA快速切换任务,无需存储多个完整模型

LoRA vs 其他微调方法

方法参数量存储开销训练速度灵活性
全参数微调100%极大
Adapter~3-10%中等
LoRA0.1-1%极小
Prompt Tuning~0.1%极小

相关文章:

  • 跨链模式:多链互操作架构与性能扩展方案
  • Linux线程互斥与竞态条件解析
  • 若依项目部署--传统架构--未完待续
  • 西电【网络与协议安全】课程期末复习的一些可用情报
  • K8S认证|CKS题库+答案| 9. 网络策略 NetworkPolicy
  • 相关类相关的可视化图像总结
  • 华为云Flexus+DeepSeek征文|基于华为云一键部署Dify平台,接入DeepSeek大模型,构建数据可视化助手应用实战指南
  • 为什么要创建 Vue 实例
  • Linux部署私有文件管理系统MinIO
  • Ubuntu 安装 Mysql 数据库
  • 256bps!卫星物联网极低码率语音压缩算法V3.0发布!
  • 数据结构-线性表
  • 水泥厂自动化升级利器:Devicenet转Modbus rtu协议转换网关
  • ASR(语音识别)语音/字幕标注 通过via(via_subtitle_annotator)
  • 关于TFLOPS、GFLOPS、TOPS
  • npm符号链接
  • CopyQ | 在命令中使用正则表达式并实现匹配指定字符串的方法
  • seata的xid在feign中传递分析
  • deepseek: 反汇编 难点+ 工具
  • 亚马逊Woot深度解析
  • 网站建设合同服务事项/优化seo可以从以下几个方面进行
  • 爱搜索中级网站建设/大连网络推广
  • 寻花问柳-一个专做男人的网站/阿拉善盟seo
  • 制作人韩剧结局/企业seo顾问服务
  • pathon做网站/公司网站如何建设
  • 各网站封面尺寸/百度推广账户怎么开