AIGC生图产品PM必须知道的Lora训练知识!

devtools/2025/3/1 15:56:35/

hihi,其实以前在方向AIGC生图技术原理和常见应用里面已经多次提到Lora的概念了,但是没有单独拿出来讲过,今天就耐心来一下!
🔥 一口气摸透AIGC文生图产品SD(Stable Diffusion)!

一、什么是Lora?

痛点

在自然语言处理领域,一种重要的范式是对通用领域数据进行大规模预训练,然后将模型适应到特定任务或领域。随着预训练模型越来越大,完全微调(重新训练所有模型参数)的成本越来越高。例如,对于拥有1750亿参数的GPT-3 175B模型,部署独立的微调模型实例是非常昂贵的。

Low-Rank Adaptation (LoRA)是一种解决方案,它通过在Transformer架构的每一层中注入可训练的低秩分解矩阵,将预训练模型的权重固定,并在下游任务中大大减少了可训练的参数数量。这样可以显著降低下游任务中需要微调的参数数量。
在这里插入图片描述

定义

Lora(Low-Rank Adaptation,低秩自适应)是一种针对大型AI模型的高效微调技术,由微软研究人员提出。其核心原理是通过低秩矩阵分解,仅调整原模型的一小部分参数(通常为0.1%-1%),即可实现特定任务的适配。

  • 低秩(Low Rank):在数学中,秩(Rank)是一个描述矩阵信息量的概念。低秩意味着这个矩阵包含的信息比较少。在机器学习中,常常使用低秩的方法来简化问题,因为包含的信息少,计算就更快,更容易处理。
  • 适应(Adaptation):适应是指模型可以根据新的数据自我调整,使得模型在新的数据上表现得更好。这对于处理那些数据分布可能会变化的问题非常有用。

从产品视角看,Lora的核心价值在于:

  1. 低成本高效:相比传统全量微调,Lora仅需少量数据和计算资源,训练时间缩短50%以上。例如,微调一个14GB的大模型可能仅需40MB的Lora参数。
  2. 灵活性与兼容性:Lora参数可叠加或独立存储,支持多任务适配、参数混合(如不同风格Lora按比例融合)。
  3. 性能无损:通过低秩逼近保留原模型能力,推理时与基础模型合并,性能接近全量微调。

典型应用场景包括图像生成(如Stable Diffusion风格定制)、语言模型领域适配(如法律/医疗文本生成)等。

使用

  1. 点击任意一个 LORA 模型,会自动填写到格式形如<lora:模型文件名称:权重>的 Prompt 到提示词输入框中。
    在这里插入图片描述
  2. 触发词 (trigger)):单纯引入模型,很多时候并不会触发LORA 的效果,因为LORA 在训练时基本都会加入若干个特殊的触发词,所以使用时也需要在提示词中输入触发词才能激活 LORA 的效果。
  3. 存储位置:/models/LORA

二、常见五大应用场景

1. 描绘特定人物形象

LoRA 最广的应用场景没有之一,在图生图里面的赛博Coser 就是一个典型例子,另外还包括打造动画、漫画、游戏里面的角色等等也属于这个场景的应用范畴。
在这里插入图片描述

2. 描绘特定画风

实现画风、或者视觉风格的微调。对应C站的 Model 分类为 Style
在这里插入图片描述

3. 描绘特定概念、特效

“概念”,它类似画风但又比画风更抽象。
在这里插入图片描述

4. 穿着特定服饰

给人物换上特定的服装,同系列、同主题或者同色彩的服装,例如汉服、机甲、武装。
在这里插入图片描述

5. 添加特定元素

借助蒙板功能,可以给原图像的局部添加或替换特定的元素。
在这里插入图片描述

三、训练步骤

从产品落地的全流程视角,Lora训练可分为以下阶段:

1. 数据准备

📢 常规要求

 ① 不少于 15 张的高质量图片,一般可以准备 20-50 张图;② 減少重复或相似度高的图片;③ 图片主体内容清晰可辨、特征明显,图片构图简单,避免其它杂乱元素④ 覆盖目标特征的多角度、多场景(如人物需包含正/侧/仰视)。 如果是人物照,尽可能以脸部特写为主(多角度、多表情),再放几张全身像(不同姿势、不同服装)

📢 避免

① 脸部有遮挡的不要(比如麦克风、手指、杂物等)②背景太复杂的不要(比如一堆字的广告板,或夜市太乱的背景)③分辨率太低的不要④光影比较特殊的不要(比如暗光,背光等)⑤不像本人特征的不要(比如大部分训练集都是长发,那么短发显脸大的不要,大笑毁形象的不要)⑥化妆太浓重的、美颜太严重的不要

🌰 案例

不同的训练目标所需要准备的训练集数量不同,eg:
- 真人类lora:30-50张图,需要有不同角度,不同姿势,面部特写等各种类型的图
- 二次元lora:10-30张图,需要有不同角度,不同姿势,面部特写等各种类型的图
- 画风类lora:100张图以上,需要不同的主题,丰富的细节。

💥 注意

① 去掉杂乱背景:如抠图,移除背景;② 标准归一化:如统一宽高;🔥 网站:https://www.birme.net(将需要处理的图片上传,调整好保留的区域,然后保存为压缩包即可。)③ 训练集数量不是越多越好,训练集的质量更是重中之重,训练集的质量可以从两个角度衡量
- 像素值越大,图片细节越多越好
- 美学价值越高越好,如特定的构图,经典的画作,摄影作品

2. 数据打标

打标有以下几种方式

  1. 手动打标:手动为每一张图片的内容制作标签文本,这种方式速度慢,但准确度高,稳定性好,适用于训练集较少的情况。

  2. 自动打标:使用打标脚本来帮助打标,这种方式速度很快,但准确度不高,会出现重复标签和冲突标签,适用于庞大的训练集

  3. 🚩自动打标手动校准:先用脚本自动打标,逐个检查每个标签文件,删去重复标签,增加触发词等等,这是我们最推荐的打标方式

    Step 01自动化打标

    • 方法一:SD自带的Tagger
      在这里插入图片描述在这里插入图片描述

    • 方法二:秋叶大神WD 1.4 Tagger自动打标
      在这里插入图片描述

    • 方法三:LLAVA(我们公司用的是这个)

    Step 02标签清洗:清洗噪声标签,添加核心触发词。

    💥 注意(思考🤔一下):希望保留的特征要删去,以人物的lora为例,如人物的发色,富有个人特点的饰品等等,所有删除的标签会被集合到触发词中,从而达到生成特定人物的目的。

    • 保留/添加标签:等价于引入基础模型中该标签的特征,表示在使用LoRA 时、这个位置的标签是可自定义的,画面可调范围就大;
    • 删除标签的作用:等价于将素材图片特征与 LoRA 做绑定,可以理解为训练出来的LORA 特征会覆盖基础模型同名标签所指向的特征;
      在这里插入图片描述

3. 参数配置与优化

在这里插入图片描述

  • 基础配置:推荐使用Kohya GUI工具,设置网络秩(Rank=32)、学习率(1e-4)、批量大小(Batch Size=2)。
  • 调优技巧
    • 动态学习率:初始1e-4,损失波动时降至5e-5。
    • 抗过拟合:增加Network Alpha值或提前终止训练。
      在这里插入图片描述

4. 模型训练与验证

  • 训练监控:通过TensorBoard观察损失曲线,每200步保存检查点。
    在这里插入图片描述

  • 效果验证

    • 基础测试:使用触发词生成多尺寸图片,验证特征一致性。
    • 泛化测试:组合不同风格提示词(如“赛博朋克+水墨”),检验兼容性。

💡 具体方法:

  1. 提示词添加<lora:模型 -NUM-STRENGTH> + 添加controlnet参考图
    在这里插入图片描述2. 在 Webul页面最底部的脚本栏中调用 XYZ plot 脚本,设置模型对比参数。划重点:其中 X轴类型和 Y 轴类型都选择「提示词搜索/替换」Prompt S/R.
    X 轴值输入:NUM,000001,000002,000003,000004,000005,对应模型序号
    Y 轴值输入:STRENGTH,0.1,0.2,0.3,0.4,0.5,0.6,0.7,0.8,0.9,1,对应模型权重值在这里插入图片描述
  2. 生成图像,定位最合适的lora
    在这里插入图片描述

5. 部署与迭代

  • 将训练完成的Lora模型(通常为.safetensors文件)部署至Stable Diffusion的models/Lora目录,通过WebUI动态加载。
  • 根据用户反馈进行2-3轮微调迭代,逐步优化特征权重和泛化能力。

总结

作为AI产品落地的关键技术,Lora通过“轻量适配”解决了大模型定制化成本高、灵活性差的痛点。未来,随着多模态模型的发展,Lora在视频生成、3D建模等场景的应用潜力将进一步释放。产品经理需重点关注训练工具链的易用性优化(如自动化标注、云端训练平台)及商业化场景挖掘(如企业专属风格模型库)。


http://www.ppmy.cn/devtools/163667.html

相关文章

【JavaWeb13】了解ES6的核心特性,对于提高JavaScript编程效率有哪些潜在影响?

文章目录 &#x1f30d;一. ES6 新特性❄️1. ES6 基本介绍❄️2. 基本使用2.1 let 声明变量2.2 const 声明常量/只读变量2.3 解构赋值2.4 模板字符串2.5 对象拓展运算符2.6 箭头函数 &#x1f30d;二. Promise❄️1. 基本使用❄️2. 如何解决回调地狱问题2.1回调地狱问题2.2 使…

计算机毕业设计Python+DeepSeek-R1大模型考研院校推荐系统 考研分数线预测 考研推荐系统 考研(源码+文档+PPT+讲解)

温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 温馨提示&#xff1a;文末有 CSDN 平台官方提供的学长联系方式的名片&#xff01; 作者简介&#xff1a;Java领…

拍照自带解说?水印相机,让CAD照片标注“开口说话”!

在施工造价等领域的工作中&#xff0c;现场图片与图纸的结合使用是非常常见的场景。以往&#xff0c;我们可能会花费大量时间去整理和标记图片&#xff0c;以便与图纸准确对应。 现在&#xff0c;借助CAD快速看图-水印相机功能&#xff0c;这些问题都能轻松解决&#xff01; …

fastadmin 后台sku 插件

老规矩先上效果图 新引用需要用到的js define([backend], function (Backend) {require.config({paths: {// vue: ../js/vue,//js省略&#xff0c;如果是vue.min.js&#xff0c;就学vue.minlayui: /assets/LayuiSpzj/layui/layui,//js省略&#xff0c;如果是vue.min.js&#x…

SpringBoot 3.0微服务架构实战:从设计到部署

# SpringBoot 3.0微服务架构实战&#xff1a;从设计到部署 理解微服务架构 什么是微服务架构 在传统的单体应用架构中&#xff0c;整个应用作为一个单独的单元被构建和部署。而在微服务架构中&#xff0c;应用被拆分成多个小的、独立的服务单元&#xff0c;每个服务都有自己独立…

Postman 11.34 最新版安装与API测试入门教程(Windows平台)

一、软件定位与核心功能 Postman 是全球最流行的API开发与测试工具&#xff0c;支持REST、SOAP、GraphQL等协议&#xff0c;提供接口调试、自动化测试、文档生成等功能。2025年版本新增AI智能参数生成和团队协作实时同步特性。 二、安装环境与下载准备 1. 系统要求 项目最低…

解读DeepSeek开源的flashMLA项目的意义

DeepSeek开源的FlashMLA项目是一项针对英伟达Hopper架构GPU&#xff08;如H100/H800&#xff09;优化的高效MLA&#xff08;Multi-Layer Attention&#xff09;解码内核&#xff0c;其设计逻辑和架构体现了对AI计算效率与资源利用率的深度优化&#xff0c;对人工智能领域具有显…

【SpringBoot】【log】 自定义logback日志配置

前言&#xff1a;默认情况下&#xff0c;SpringBoot内部使用logback作为系统日志实现的框架&#xff0c;将日志输出到控制台&#xff0c;不会写到日志文件。如果在application.properties或application.yml配置&#xff0c;这样只能配置简单的场景&#xff0c;保存路径、日志格…