手把手教你用LoRA训练自己的Stable Diffusion模型_lora stable diffusion

LoRa模型训练教程(炼丹,Stable Diffusion) 何为LoRA?LoRA并不是扩散模型专有的技术,而是从隔壁语言模型(LLM)迁移过来的,旨在解决避免将整个模型参数拷贝下来才能对模型进行调校的问题。因为大型语言模型的参数量过于恐怖,比如最近新出的GPT-4参数量约为100 万亿。LoRA采用的方式是向原有的模型中插入新的数据处理层,这样就避免了去修改原有的模型参数,从而避免将整个模型进行拷贝的情况,同时其也优化了插入层的参数量,最终实现了一种很轻量化的模型调校方法。 阅读详情
AI摘要

本文手把手教你用LoRA训练自己的Stable Diffusion模型,涵盖准备数据、数据打标签、执行训练和推理等步骤。推理部分包括LoRA推理和全参数推理。此外,还分享了全套AIGC学习资料,包含学习路线、必备工具、学习笔记、视频教程和实战案例等。

写在前面

    Stable Diffusion大家已经很熟悉了,那么如何训练自己的sd模型呢,今天我就介绍一下用LoRA训练sd的方法。

    我们以Chilloutmix为例,Chilloutmix可以生成好看的小姐姐。为了实验LoRA的能力,我们用小哥哥的图片对它进行微调,看效果如何。

一、准备数据

    从网上找一些小帅的图片,需要脸部清晰的、多角度的、正脸的、侧脸的、最好是背景干净的、各种表情的,这样增加训练集的多样性,提高模型的泛化能力。

    素材可以少(一般几十张就不少了,太多了也会过拟合),但是质量一定要高。 

    背景最好是纯色,想训练什么就突出什么,对于我们的任务,需要选取人脸为重点的图片。

    搜集好训练用的图像后,需要进行大小的规范处理,需要是64的倍数。一般都处理为512\*512,也可以是768\*768,不建议超过1024,尺寸越大则越吃显存。

    推荐一个批量处理图像尺寸的网站挺好用的:https://www.birme.net/ 

    处理后的图片长这样:

二、数据打标签

    其实我们要训练的是ControlNet,现在图片有了,还差图片的描述或者叫标签。我们不需要自己手动给每张图片打标签,sd-webui有现成的工具(DeepBooru)生成图片的标签。

    在sd-webui中进行如上操作,在3填写输入图片的目录,4填写输出目录,处理之后原图片和标签文件txt都会放在输出目录

    txt中的内容长这样,都是一个一个的标签:

    接下来我们要检查每张图片的标签,这里有两个简单的原则:

    1.通用的特征标签需要去掉,比如人物的眼睛、眉毛、鼻子、头发长度等代表人物本身的属性。凡是绑定在人物身上的,就要把它们删除。再比如出图只要黑色头发,那训练数据都喂黑色头发,并且删掉类似“black\_hair”的标签。

    2.留下非通用的标签,比如不是每张训练数据都是微笑的,所以对于微笑的数据应该有“smile”标签;不是所有的数据背景都是白色,就要保留“white backgroud”。

    具体保留或者增加什么标签其实没有硬性的规定,还是要根据具体情况反复尝试。

    sd-webui是有打标签的插件的,但是我更喜欢一款小工具,方便多人使用,BooruDatasetTagManager,地址:https://pan.baidu.com/s/1Ff7nkwf95AziCcZWTofIzg?pwd=jfoe 

    数据和标签准备好后放在一个自定义的目录中待用,有一点需要注意,文件名的格式是**数字\_字母**,前面的数字是每次训练过程中网络训练单张图片的**次数,**比如10\_asianman**。**这个目录命名很重要,一定不要写错!!!

三、执行训练

    LoRA训练我们使用kohya,kohya是日本人开发的,所以会经常出现日文,凑活这看吧。

    1.建一个conda环境
conda create --name kohya python=3.10
    2.进入环境
conda activate kohya
    3.下载kohya,别忘了下载sd-scripts目录中的项目:[kohya-ss (Kohya S.) · GitHub](https://github.com/kohya-ss/ "kohya-ss (Kohya S.) · GitHub"),下载后执行:
pip install -r requirements.txt
    4.因为我们是对Chilloutmix进行微调,所以先在这里下载Chilloutmix,并放在model目录下。

    5.启动kohya:
python kohya_gui.py --listen 0.0.0.0 --server_port 12348 --inbrowser
    6.打开地址[http://\[ip\]:12348/](http://10.20.26.29:12348/ "http://[ip]:12348/") ,并填写配置信息:

同时Parameters菜单中还有一些高级设置,比如batch size、train steps、LoRA的秩、Alpha等:

    **一些注意:**        

    1.训练时的总epoch数是算出来的,上面的Epoch好像没有用,计算公式是:

Max train steps * Train batch size / (数据总数 * 训练单张图片的次数),这算法很奇怪,他把Train batch size当做了batch size per device

    2.LoRA的秩用8就可以了,Alpha训练人物一般都设32,64都可以;训练风格可以用到128。

    3. 我看到有的文章说不能直接用safetensors文件直接训练,必须还要有config.json,但是我没有遇到这种情况。如果遇到了可以下载[这个](https://pan.baidu.com/s/1fD1yPD4eyIL2dj2CSHeuSg?pwd=fts2 "这个"),放在项目根目录的openai/clip-vit-large-patch14 和 laion/CLIP-ViT-bigG-14-laion2B-39B-b160k

    4.如果要全参数训练只需选择Dreambooth菜单,其它使用方式和LoRA基本相同:

    5.如果报这个错的话:'FieldInfo' object has no attribute 'required'. Did you mean: 'is\_required'?,是一些库的版本冲突了,可以试试如下命令:
pip install gradio==3.48.0
pip install pydantic==1.10.13 pydantic_core==2.14.6
pip install transformers==4.38.0
pip install accelerate==0.25.0
pip install torch==2.1.1
pip install xformers==0.0.23

四、执行推理

    训练成功后模型会存在输出目录,比如叫做models/last-000007.safetensors。

1.LoRA推理

(1)安装additional-networks

    如果sd-weiui的“text2img”和“img2text”中已经有Additional Networks菜单,则之间跳过该步骤。

    安装additional-networks插件,有两种方式:  
    a.在“Extensions-URL for extension's git repository”输入https://github.com/kohya-ss/sd-webui-additional-networks就可以安装了。

    b.如果网络不允许的话,就自行下载压缩包解压放到SD的extensions目录下。

    安装完之后一定要重启sd进程!之后我们可以看到选项卡上多了一个Additional Network选项。

(2)将Chilloutmix基础模型放在models/Stable-diffusion目录

(3)将训练完的LoRA模型放在sd-webui的extensions/sd-webui-additional-networks/models/lora目录

(4)使用基础模型重绘一张图片看看,都是小姐姐:

(5)使用LORA,再生成看看:

    emmm,已经有很强的男性特征,证明LoRA生效了。

2.全参数推理

    如果使用全参数训练的模型,模型结果比较大,有几个g。使用更简单了,放在models/Stable-diffusion中,直接选择这个模型就可以了。

    用LoRA训练自己的SD模型就介绍到这里,关注不迷路(#^.^#)
关于AI绘画技术储备

学好 AI绘画 不论是就业还是做副业赚钱都不错,但要学会 AI绘画 还是要有一个学习规划。最后大家分享一份全套的 AI绘画 学习资料,给那些想学习 AI绘画 的小伙伴们一点帮助!

感兴趣的小伙伴,赠送全套AIGC学习资料和安装工具,包含AI绘画、AI人工智能等前沿科技教程,模型插件,具体看下方。

需要的可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

一、AIGC所有方向的学习路线

AIGC所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

在这里插入图片描述

二、AIGC必备工具

工具都帮大家整理好了,安装就可直接上手!
在这里插入图片描述

三、最新AIGC学习笔记

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。
在这里插入图片描述
在这里插入图片描述

四、AIGC视频教程合集

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

在这里插入图片描述

五、实战案例

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。
在这里插入图片描述
这份完整版的学习资料已经上传优快云,朋友们如果需要可以微信扫描下方优快云官方认证二维码免费领取【保证100%免费】

在这里插入图片描述

SD之lora训练 训练自己的模型可以在现有模型的基础上,让AI懂得如何更精确生成/生成特定的比如,你下载了一个人物的大模型checkpoint,但是你想生成特点的人物,比如迪丽热巴,AI大模型是不知道迪丽热巴长什么样子的,这个使用lora就派上用场了。要注意的是,对于一些基础东西,比如长头发、短头发、黑色头发、棕色头发,这些AI 都是知道的,lora并不是做这个的。 阅读详情

相关推荐

Stable Diffusion教学 使用Lora制作AI网红 【AI绘画真人教程】

Stable Diffusion教学 使用Lora制作AI网红 【AI绘画】一键启动/修复/更新/模型下载管理全支持!

qq_43666228的博客 1万+

Stable Diffusion Lora模型训练详细教程

stable diffusion lora模型训练

程序员深度学习 5万+

手把手教你玩转LoRA训练——用Kohya_ss打造专属AI画师

让它能快速学会新风格,而不用重新训练整个大模型!Kohya_ss的界面可能有点复杂,但我们只关注。​(支持Windows/Linux/Mac)在开始训练前,先确保你的文件夹结构。LoRA就像给AI模型加了个。​(让AI知道图片里有什么)​(20-50张就够了!

weixin_41871092的博客 1700

stable diffusion打造自己专属的LORA模型

通过Lora小模型可以控制很多特定场景的内容生成。 但是那些模型是别人训练好的,你肯定很好奇,我也想训练一个自己的专属模型(也叫炼丹~_~)。 甚至可以训练一个专属家庭版的模型(family model),非常有意思。 将自己的训练好的Lora模型放到stableDiffusion lora 目录中,同时配上美丽的封面图。

王清培的个人博客 1万+

【stable diffusion】如何训练一个非常像的真人LoRA

LoRA模型的训练目标是生成的图片与原训练图像高度相似。这是通过在Diffusion模型上添加额外权重来实现的,这些权重被保存在一个称作LoRA文件的单独文件中。可以将LoRA文件视为Diffusion模型的一种插件,这种插件会根据训练过程不断调整权重,以达到与原始训练图相似的效果。通过本文,您应该对如何训练一个高质量的真人LoRA模型有了全面的了解,从准备数据集到参数设置,再到最终的测试。随着技术的不断进步,LoRA训练变得越来越简单,希望您能够利用这些知识创造出令人惊叹的人物图像。

python03012的博客 4724

Stable Diffusion XL之使用Stable Diffusion XL训练自己的AI绘画模型

其中config_file.toml文件中的配置文件包含了sdxl_arguments,model_arguments,dataset_arguments,training_arguments,logging_arguments,sample_prompt_arguments,saving_arguments,optimizer_arguments以及additional_network_arguments九个个维度的参数信息。但是切记不能在多尺度增强的时候将图片的主体特征裁剪掉(比如人脸,建筑等)。

weixin_43056275的博客 6346

手把手教你用LoRA训练自己的Stable Diffusion模型

Stable Diffusion大家已经很熟悉了,那么如何训练自己的sd模型呢,今天我就介绍一下用LoRA训练sd的方法。建议先看一下这两篇文章,了解一些前置知识:[手把手教你在linux中部署stable-diffusion-webui](https://blog.youkuaiyun.com/xian0710830114/article/details/130124332 "手把手教你在linux中部署stable-diffusion-webui")

m0_71745258的博客 903

【Stable Diffusion】lora-scripts 训练LoRA模型

本文介绍了LoRA技术在图像生成中的应用,重点讲解了基于lora-scripts的WebUI训练方法。通过《真·三国无双8》角色立绘训练案例,详细说明了从数据预处理、参数设置到模型训练的全过程。项目提供图形化界面支持Windows/Linux系统,简化了训练流程。文章涵盖SD切分素材、训练模式选择、数据集配置、学习率优化等关键步骤,并展示了训练效果评估方法。最后指导用户将训练完成的LoRA模型部署到Stable Diffusion中使用。该教程使没有深厚编程基础的用户也能高效完成LoRA模型训练。

Mr数据杨 1521

手把手教你用LoRA训练自己的Stable Diffusion模型_stable diffusion lora

StableDiffusion大家已经很熟悉了,那么如何训练自己的sd模型呢,今天我就介绍一下用LoRA训练sd的方法。建议先看一下这两篇文章,了解一些前置知识:手把手教你在linux中部署stable-diffusion-webui如何训练一个大模型:LoRA篇我们以Chilloutmix为例,Chilloutmix可以生成好看的小姐姐。为了实验LoRA的能力,我们用小哥哥的图片对它进行微调,看效果如何。

月流霜的专栏 1175

网课、网页视频倍速播放简单脚本

一个简单的网页视频倍速脚本

huazn612的博客 1万+

【2025年五一数学建模竞赛】A题 完整论文 模型建立与求解

2025年五一数学建模竞赛 A题:基于历史数据与模式识别的道路车流量推测模型研究

Magnolia_He的博客 3783

Stable Diffusion教程|练丹师是如何炼丹的Lora模型训练

还记得我们之前就讲过学习SD成为炼丹师不?那么今天就来手把手教大家炼丹,看看同一个角色或某种风格的小模型是如何制作出来的。

2401_83048197的博客 942

展会客流统计的客流统计系统,WiFi客流每时每客

一般展会的举行时间都在3-7天之间,展会作为市场部门一项重要工作,一直以来没有一项有效的工具能够提供数据支持。 展会最重要的是通过活动和产品来吸引参展者的参观,如何统计展会期间的客流量呢?如何通过将数据转化成为活动数据的支撑呢? 目前成熟的解决方案有,视频客流统计、WiFi客流统计、红外线客流统计等方式。由于展会通常的时间都比较短,视频、红外线客流统计采购及安装价格都比较高,需

isentech的博客 3998

【LoRA模型训练】Stable Diffusion LoRA 模型秋叶训练器详细教程

本文详细介绍了秋叶LoRA训练器的使用全流程,包括安装指南、数据集准备、参数配置、训练监控、效果测试等核心环节。该工具基于LoRA技术,能高效微调Stable Diffusion模型,具有参数效率高(仅需训练2%参数)、部署灵活(模型10-200MB)、中文优化等特点。文章提供了从硬件要求、素材预处理到标签优化的完整数据准备方案,重点解析了网络维度、学习率等关键参数的设置技巧,并给出训练监控、问题排查及模型优化的实用建议。针对SDXL训练、多LoRA组合等高级应用场景也提供了专项配置方案。

weixin_41080437的博客 4647

synopsys工具安装系列(一)安装installer

synopsys为eda工具安装,提供了一个安装器,名叫installer。所以,首先要先安装installer这个工具,之后才能安装其他的eda工具。 首先从官网下载该installer工具。我这里下载的是5.2版本 下载之后,有如下安装文件。 将该安装包,拷贝到linux服务器中。 首先给SynopsysInstaller_v5.2.run赋予可执行权限。 chmod a+x SynopsysInstaller_...

weiqi7777的博客 8394

Vue+OpenLayers:解决中国境内OpenStreetMap地图加载问题

然而,在使用OpenLayers和Vue框架搭建地图应用时,很多中国开发者可能会遇到一个常见问题:OpenStreetMap(OSM)地图无法正常加载。为了解决这个问题,我们可以使用其他方式获取地图数据,比如使用国内的地图服务提供商。通过使用国内地图服务商提供的地图数据,我们可以解决OpenStreetMap地图加载问题。然后,我们创建一个OpenLayers地图对象,并指定地图图层的源为国内地图服务商提供的地图URL。属性,可以将地图的中心点和缩放级别调整到我们需要的位置。

CodeWhizZ的博客 8275

Stable Diffusion教程:LoRA模型

LoRA模型是一种微调模型,它不能独立生成图片,常常用作大模型的补充,用来生成某种特定主体或者风格的图片。

A1353192296的博客 1375

手把手教你学Simulink——基于通信协议与标准的场景实例:卫星通信中的网络安全协议(IPSec)仿真

随着卫星通信在国防、金融、应急指挥、能源管网等关键领域的广泛应用,其安全性已成为系统设计的核心要求。然而,卫星链路具有广播特性、长距离传输、地面站分布广等特点,极易遭受窃听、篡改、重放、中间人攻击等网络威胁。传统的“信任链路层安全”已不足以应对现代网络攻击。为此,国际标准组织(如IETF、ETSI、CCSDS)推荐在卫星通信中部署协议,实现端到端的数据机密性、完整性、身份认证和抗重放保护。本文将手把手教你如何在中构建一个符合标准的仿真系统,涵盖从明文传输到加密隧道的完整安全链路建模。本文完整实现了。

MHD0815的博客 151

如何训练一个stable diffusion模型?

显卡要好,显存要高素材像素要好,数量越多越好素材不必要的元素越少越好,太多就扣像留白底要好好的打标签,影响最终效果作者:AIGCtalker链接:https://www.zhihu.com/question/595744321/answer/3118574311来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

2401_84760527的博客 3567

基于单光子探测的高重频多通道符合测距

TDC专栏之基于单光子探测的高重频多通道符合测距

sdau2005的博客 1205

以太网_RGMII接口与GMII接口的转化_03

RGMII接口转GMII接口!

weixin_42499230的博客 379
上一篇: AI作图手把手教程系列:进阶篇 —— 使用ControlNet插件可控生成AI图
下一篇: Stable Diffusion【Lora模型】【服饰妆造】:AI绘画技术,让服装设计变得更加多彩多姿_换包包 lora
壹只小小码农
博客等级 码龄5年 8105粉丝 1333原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值