Stable Diffusion:使用自己的数据集微调训练LoRA模型

前言
前提条件
- 安装 Python 3.10.6 :https://www.python.org/downloads/release/python-3106/
 - 安装 git:https://git-scm.com/download/win
 - 安装 Visual Studio 2015, 2017, 2019, and 2022 redistributable:https://aka.ms/vs/17/release/vc_redist.x64.exe
 
相关介绍
微调训练LoRA模型
下载kohya_ss项目
下载解压后,项目目录,如下图所示。
 
安装kohya_ss项目
-  
打开终端并导航到所需的安装目录。
进入kohya_ss目录:cd kohya_ss -  
执行如下命令运行setup脚本:
.\setup.bat 
如果没有报错,则安装成功。
运行kohya_ss项目
在Windows上,使用gui.bat脚本并在终端中运行它,命令如下:
gui.bat --listen 127.0.0.1 --server_port 7860 --inbrowser --share
 
运行成功后,可在浏览器输入http://127.0.0.1:7860/打开,如下图所示。
 
准备数据集
在kohya_ss项目下,创建一个train目录,具体内容如下:
 
生成关键词
- 具体步骤:Utilities->Captioning->BLIP Captioning
 

 成功生成,会出现TXT文件,如下图所示。
 

 
模型参数设置
预训练模型设置

文件夹设置

训练参数设置

开始训练LoRA模型

 
 
 
 
 
 
 训练完成后,会在model文件夹里生成一个.safetensors模型文件
 
TensorBoard查看训练情况
在页面上,点击Start TensorBoard,打开网址http://127.0.0.1:6006,即可查看。
 

 
测试训练的LoRA模型
-  
将kohya_ss/train/Freeman/model目录里的
Freeman_bs2_epoch50_fp16.safetensors模型文件分别拷贝到stable-diffusion-webui项目里的stable-diffusion-webui/models/Lora目录和stable-diffusion-webui/models/Stable-diffusion目录下。


 -  
在stable-diffusion-webui目录下,使用
webui-user.bat脚本并在终端中运行它,命令如下: 
webui-user.bat
 

运行成功后,可在浏览器输入http://127.0.0.1:7861/打开,如下图所示。
 
- 选择自己训练的LoRA模型



 
文字生成图像(txt2img)
 <lora:Freeman_bs2_epoch50_fp16:1>Freeman a beautiful woman with glasses and a white dress,modelshoot style,beautiful light,photo realistic game cg
 

参考
[1] https://github.com/bmaltais/kohya_ss.git
 [2] https://github.com/AUTOMATIC1111/stable-diffusion-webui
 [3] https://github.com/camenduru/stable-diffusion-webui
 [4] https://www.kaggle.com/code/camenduru/stable-diffusion-webui-kaggle
 [5] https://blog.csdn.net/wpgdream/article/details/130607099
 [6] https://zhuanlan.zhihu.com/p/620583928










