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

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

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建模等场景的应用潜力将进一步释放。产品经理需重点关注训练工具链的易用性优化(如自动化标注、云端训练平台)及商业化场景挖掘(如企业专属风格模型库)。

相关文章:

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

hihi&#xff0c;其实以前在方向AIGC生图技术原理和常见应用里面已经多次提到Lora的概念了&#xff0c;但是没有单独拿出来讲过&#xff0c;今天就耐心来一下&#xff01; &#x1f525; 一口气摸透AIGC文生图产品SD&#xff08;Stable Diffusion&#xff09;&#xff01; 一、…...

【Swift 算法实战】城市天际线问题解法

网罗开发 &#xff08;小红书、快手、视频号同名&#xff09; 大家好&#xff0c;我是 展菲&#xff0c;目前在上市企业从事人工智能项目研发管理工作&#xff0c;平时热衷于分享各种编程领域的软硬技能知识以及前沿技术&#xff0c;包括iOS、前端、Harmony OS、Java、Python等…...

易错点abc

在同一个输入流上重复创建Scanner实例可能会导致一些问题&#xff0c;包括但不限于输入流的混乱。尤其是在处理标准输入&#xff08;System.in&#xff09;时&#xff0c;重复创建Scanner对象通常不是最佳实践&#xff0c;因为这可能导致某些输入数据丢失或者顺序出错。 为什么…...

C++ 正则表达式分组捕获入门指南

在 C 中&#xff0c;正则表达式&#xff08;regex&#xff09;是一种用于匹配字符串模式的强大工具。正则表达式不仅能帮助你查找符合特定模式的字符&#xff0c;还能捕获匹配的子字符串&#xff08;即分组捕获&#xff09;。这篇文章将介绍 C 正则表达式中的分组捕获机制&…...

AI人工智能机器学习之降维和数据压缩

1、概要 本篇学习AI人工智能机器学习之降维和数据压缩&#xff0c;以主成分分析&#xff08;PCA, Principal Component Analysis&#xff09;为例&#xff0c;从代码层面讲述机器学习中的降维和数据压缩。 2、降维和数据压缩 - 简介 在机器学习和数据分析中&#xff0c;降维&…...

17 款电脑压缩工具详解及下载指南(2025 年最新版)

在数字时代,文件压缩是日常工作与生活中不可或缺的操作。无论是视频剪辑师压缩视频以便上传,还是普通用户节省存储空间,一款优质的压缩软件都能极大提升效率。本文将详细介绍 17 款热门电脑压缩软件,涵盖它们的特点、下载地址及适用场景,助你找到最适合自己的工具。 一、…...

DeepSeek开源周Day5压轴登场:3FS与Smallpond,能否终结AI数据瓶颈之争?

2025年2月28日&#xff0c;DeepSeek开源周迎来了第五天&#xff0c;也是本次活动的收官之日。自2月24日启动以来&#xff0c;DeepSeek团队以每天一个开源项目的节奏&#xff0c;陆续向全球开发者展示了他们在人工智能基础设施领域的最新成果。今天&#xff0c;他们发布了Fire-F…...

ROS2软件调用架构和机制解析:Publisher创建

术语 DDS (Data Distribution Service): 用于实时系统的数据分发服务标准&#xff0c;是ROS 2底层通信的基础RMW (ROS Middleware): ROS中间件接口&#xff0c;提供与具体DDS实现无关的抽象APIQoS (Quality of Service): 服务质量策略&#xff0c;控制通信的可靠性、历史记录、…...

【落羽的落羽 C++】C++入门基础·其之一

文章目录 一、C简介1. C的发展历史2. C参考文档 二、namespace命名空间1. C语言的一个缺陷2. namespace3. 命名空间的使用3.1 命名空间成员访问3.2 using展开 一、C简介 1. C的发展历史 C起源于1979年的贝尔实验室&#xff0c;Bjarne Stroustrup&#xff08;本贾尼博士&#…...

docker使用代理的简单配置

1准备代理服务器 准备代理服务器&#xff0c;例如192.168.120.168:52209 配置docker.service文件 查看service文件的位置 systemctl status docker 编辑service文件 vim /usr/lib/systemd/system/docker.service 添加代理配置 ... [Service] Environment"HTTP_PROXY…...

每日一题-设计食物评分系统,哈希表的有效使用

本题出自LeetCode2353.设计食物评分系统&#xff0c;连着一星期都是设计类的题目哈 题目 设计一个支持下述操作的食物评分系统&#xff1a; 修改 系统中列出的某种食物的评分。返回系统中某一类烹饪方式下评分最高的食物。 实现 FoodRatings 类&#xff1a; FoodRatings(Strin…...

大模型应用:多轮对话(prompt工程)

概述 在与大型语言模型&#xff08;如ChatGPT&#xff09;交互的过程中&#xff0c;我们常常体验到与智能助手进行连贯多轮对话的便利性。那么&#xff0c;当我们开启一个新的聊天时&#xff0c;系统是如何管理聊天上下文的呢&#xff1f; 一、初始上下文的建立 1. 创建新会…...

WSDM24-因果推荐|因果去偏的可解释推荐系统

1 动机 可解释推荐系统&#xff08;ERS&#xff09;通过提供透明的推荐解释&#xff0c;提高用户信任度和系统的说服力&#xff0c;如下图所示&#xff0c;然而&#xff1a; 1&#xff1a;现有工作主要关注推荐算法的去偏&#xff08;流行度偏差&#xff09;&#xff0c;但未显…...

VScode在Windows11中配置MSVC

因为MSVC编译器在vs当中&#xff0c;所以我们首先要安装vs的一部分组件。如果只是需要MSVC的话&#xff0c;工作负荷一个都不需要勾选&#xff0c;在单个组件里面搜索MSVC和windows11 SDK&#xff0c;其中一个是编译器&#xff0c;一个是头文件然后右下角安装即可。搜索Develop…...

数据库基础二(数据库安装配置)

打开MySQL官网进行安装包的下载 https://www.mysql.com/ 接着找到适用于windows的版本 下载版本 直接点击下载即可 接下来对应的内容分别是&#xff1a; 1&#xff1a;安装所有 MySQL 数据库需要的产品&#xff1b; 2&#xff1a;仅使用 MySQL 数据库的服务器&#xff1b; 3&a…...

cuda-12.4.0 devel docker 中源码安装 OpenAI triton

1&#xff0c;准备 docker 容器 下载docker image: $ sudo docker pull nvidia/cuda:12.6.2-devel-ubuntu20.04 创建容器&#xff1a; sudo docker run --gpus all -it --name cuda_LHL_01 -v /home/hongleili/ex_triton/tmp1:/root/ex_triton/tmp1 nvidia/cuda:12.6…...

doris: Hive Catalog

通过连接 Hive Metastore&#xff0c;或者兼容 Hive Metatore 的元数据服务&#xff0c;Doris 可以自动获取 Hive 的库表信息&#xff0c;并进行数据查询。 除了 Hive 外&#xff0c;很多其他系统也会使用 Hive Metastore 存储元数据。所以通过 Hive Catalog&#xff0c;我们不…...

【LeetCode】131.分割回文串

目录 题目描述输入输出示例及数据范围思路C 实现 题目描述 这道题目来自 LeetCode 131. 分割回文串。 题目描述如下&#xff1a; 给你一个字符串 s&#xff0c;请你将 s 分割成一些子串&#xff0c;使每个子串都是 回文串 。返回 s 所有可能的分割方案。 输入输出示例及数据…...

JeeWMS graphReportController.do SQL注入漏洞复现(CVE-2025-0392)

免责申明: 本文所描述的漏洞及其复现步骤仅供网络安全研究与教育目的使用。任何人不得将本文提供的信息用于非法目的或未经授权的系统测试。作者不对任何由于使用本文信息而导致的直接或间接损害承担责任。如涉及侵权,请及时与我们联系,我们将尽快处理并删除相关内容。 0x0…...

基于Python+django+mysql旅游数据爬虫采集可视化分析推荐系统

2024旅游推荐系统爬虫可视化&#xff08;协同过滤算法&#xff09; 基于Pythondjangomysql旅游数据爬虫采集可视化分析推荐系统 有文档说明 部署文档 视频讲解 ✅️基于用户的协同过滤推荐算法 卖价就是标价~ 项目技术栈 Python语言、Django框架、MySQL数据库、requests网络爬虫…...

Python|GIF 解析与构建(5):手搓截屏和帧率控制

目录 Python&#xff5c;GIF 解析与构建&#xff08;5&#xff09;&#xff1a;手搓截屏和帧率控制 一、引言 二、技术实现&#xff1a;手搓截屏模块 2.1 核心原理 2.2 代码解析&#xff1a;ScreenshotData类 2.2.1 截图函数&#xff1a;capture_screen 三、技术实现&…...

SciencePlots——绘制论文中的图片

文章目录 安装一、风格二、1 资源 安装 # 安装最新版 pip install githttps://github.com/garrettj403/SciencePlots.git# 安装稳定版 pip install SciencePlots一、风格 简单好用的深度学习论文绘图专用工具包–Science Plot 二、 1 资源 论文绘图神器来了&#xff1a;一行…...

以下是对华为 HarmonyOS NETX 5属性动画(ArkTS)文档的结构化整理,通过层级标题、表格和代码块提升可读性:

一、属性动画概述NETX 作用&#xff1a;实现组件通用属性的渐变过渡效果&#xff0c;提升用户体验。支持属性&#xff1a;width、height、backgroundColor、opacity、scale、rotate、translate等。注意事项&#xff1a; 布局类属性&#xff08;如宽高&#xff09;变化时&#…...

Docker 运行 Kafka 带 SASL 认证教程

Docker 运行 Kafka 带 SASL 认证教程 Docker 运行 Kafka 带 SASL 认证教程一、说明二、环境准备三、编写 Docker Compose 和 jaas文件docker-compose.yml代码说明&#xff1a;server_jaas.conf 四、启动服务五、验证服务六、连接kafka服务七、总结 Docker 运行 Kafka 带 SASL 认…...

STM32标准库-DMA直接存储器存取

文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA&#xff08;Direct Memory Access&#xff09;直接存储器存取 DMA可以提供外设…...

高等数学(下)题型笔记(八)空间解析几何与向量代数

目录 0 前言 1 向量的点乘 1.1 基本公式 1.2 例题 2 向量的叉乘 2.1 基础知识 2.2 例题 3 空间平面方程 3.1 基础知识 3.2 例题 4 空间直线方程 4.1 基础知识 4.2 例题 5 旋转曲面及其方程 5.1 基础知识 5.2 例题 6 空间曲面的法线与切平面 6.1 基础知识 6.2…...

python如何将word的doc另存为docx

将 DOCX 文件另存为 DOCX 格式&#xff08;Python 实现&#xff09; 在 Python 中&#xff0c;你可以使用 python-docx 库来操作 Word 文档。不过需要注意的是&#xff0c;.doc 是旧的 Word 格式&#xff0c;而 .docx 是新的基于 XML 的格式。python-docx 只能处理 .docx 格式…...

【git】把本地更改提交远程新分支feature_g

创建并切换新分支 git checkout -b feature_g 添加并提交更改 git add . git commit -m “实现图片上传功能” 推送到远程 git push -u origin feature_g...

04-初识css

一、css样式引入 1.1.内部样式 <div style"width: 100px;"></div>1.2.外部样式 1.2.1.外部样式1 <style>.aa {width: 100px;} </style> <div class"aa"></div>1.2.2.外部样式2 <!-- rel内表面引入的是style样…...

Java多线程实现之Thread类深度解析

Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...