Datawhale X 魔搭 AI夏令营第四期-AIGC文生图 Task3笔记

打印 上一主题 下一主题

主题 564|帖子 564|积分 1694

一、ComfyUI应用

1.1 什么是ComfyUI

ComfyUI 是GUI的一种,是基于节点工作的用户界面,主要用于操作图像的天生技术,ComfyUI 的特殊之处在于它采用了一种模块化的设计,把图像天生的过程分解成了许多小的步调,每个步调都是一个节点。这些节点可以毗连起来形成一个工作流程,如许用户就可以根据必要定制自己的图像天生过程。
起首,ComfyUI具有直观易用的界面: 通过节点的方式,用户可以清楚地看到各个模块的功能,并根据自己的需求举行调解和毗连。这种方式使得工作流程更加明白,也低沉了使用门槛,使得不熟悉代码的用户也可以大概轻松上手
其次,ComfyUI的天生速度更快: 相较于传统的Web UI,ComfyUI在天生图片时举行了优化,明显进步了天生速度。这意味着用户可以更快地获得所需的图片,节省了名贵的时间和计算资源
此外,ComfyUI对显存的要求更低: 由于内部流程的优化,ComfyUI所需的显存比传统的Web UI更少。这意味着用户不必要高配置的硬件装备就能流畅地运行ComfyUI,低沉了使用门槛
1.2 ComfyUI核心模块

模子加载器:Load Checkpoint用于加载基础的模子文件,包含了Model、CLIP、VAE三部分,CLIP模块将文本类型的输入变为模子可以明白的latent space embedding作为模子的输入
解码器:VAE模块的作用是将Latent space中的embedding解码为像素级别的图像
采样器:用于控制模子天生图像,不同的采样取值会影响终极输出图像的质量和多样性。采样器可以调节天生过程的速度和质量之间的均衡
1.3 速通安装ComfyUI

   通过 学习手册 安装熟悉ComfyUI
  1. git lfs install
  2. git clone https://www.modelscope.cn/datasets/maochase/kolors_test_comfyui.git
  3. mv kolors_test_comfyui/* ./
  4. rm -rf kolors_test_comfyui/
  5. mkdir -p /mnt/workspace/models/lightning_logs/version_0/checkpoints/
  6. mv epoch=0-step=500.ckpt /mnt/workspace/models/lightning_logs/version_0/checkpoints/   
复制代码
 在终端(terminal)复制粘贴上述代码,运行下载文件

 打开ComfyUI.ipynb,全部运行

在最后点击网址进入ComfyUI工作流界面

1.4 ComfyUI运用

   通过 学习手册 下载工作流脚本,分为 不带Lora的工作流样例 和 带Lora的工作流样例
   点击右下角Load,载入工作流脚本,再点击Queue Prompt天生图片(可以看到整个运行流程)



不带Lora的工作流样例,天生如下

二、Lora微调

2.1 Lora简介

LoRA (Low-Rank Adaptation) 微调是一种用于在预练习模子上举行高效微调的技术。它可以通过高效且灵活的方式实现模子的个性化调解,使其可以大概适应特定的任务或范畴,同时保持良好的泛化本领和较低的资源斲丧。这对于推动大规模预练习模子的实际应用至关重要。
2.2 Lora微调的优势


  • 参数服从:Lora通过在模子的权重矩阵中引入低秩布局,淘汰了必要练习的参数数量,这使得微调过程更加高效
  • 快速适应:由于参数数量的淘汰,Lora微调可以在更短的时间内完成,这对于必要快速部署模子的场景非常有用
  • 更好的泛化本领:通过低秩适应,Lora可以大概在不粉碎预练习模子原有知识的环境下,更好地适应特定任务
  • 淘汰过拟合:由于参数数量的淘汰,Lora微调有助于淘汰模子在特定任务上的过拟合风险
  • 灵活性:Lora可以应用于不同类型的预练习模子,包罗但不限于语言模子、视觉模子等
  • 成本效益:由于练习时间的淘汰和参数数量的低沉,Lora微调可以低沉计算资源的需求,从而低沉成本
  • 持续学习:Lora微调可以支持模子在面对新数据时举行持续学习和适应,而不必要重新开始练习
2.2 Lora微调代码详解

   Baseline中Lora设置参数代码如下
  1. import os
  2. cmd = """
  3. python DiffSynth-Studio/examples/train/kolors/train_kolors_lora.py \
  4.   --pretrained_unet_path models/kolors/Kolors/unet/diffusion_pytorch_model.safetensors \
  5.   --pretrained_text_encoder_path models/kolors/Kolors/text_encoder \
  6.   --pretrained_fp16_vae_path models/sdxl-vae-fp16-fix/diffusion_pytorch_model.safetensors \
  7.   --lora_rank 16 \
  8.   --lora_alpha 4.0 \
  9.   --dataset_path data/lora_dataset_processed \
  10.   --output_path ./models \
  11.   --max_epochs 1 \
  12.   --center_crop \
  13.   --use_gradient_checkpointing \
  14.   --precision "16-mixed"
  15. """.strip()
  16. os.system(cmd)
复制代码
参数名称
参数值
阐明
pretrained_unet_path
models/kolors/Kolors/unet/diffusion_pytorch_model.safetensors
指定预练习UNet模子的路径
pretrained_text_encoder_path
models/kolors/Kolors/text_encoder
指定预练习文本编码器的路径
pretrained_fp16_vae_path
models/sdxl-vae-fp16-fix/diffusion_pytorch_model.safetensors
指定预练习VAE模子的路径

lora_rank
16
设置LoRA的秩(rank),影响模子的复杂度和性能
lora_alpha
4
设置LoRA的alpha值,控制微调的强度
dataset_path
data/lora_dataset_processed
指定用于练习的数据集路径
output_path
./models
指定练习完成后保存模子的路径
max_epochs
1
设置最大练习轮数为1
center_crop

启用中心裁剪,用于图像预处理
use_gradient_checkpointing

启用梯度检查点,节省显存
precision
"16-mixed"
设置练习时的精度为混合16位精度(half precision)
通过Lora微调后,天生效果如下:
图片编号
场景描述
正向提示词
反向提示词
图 1
女主正在上课
童话风格,课堂,金色长发少女,认真听课, 手上拿着笔,身着赤色美丽的校服,上半身,正面,坐在课桌前 丑陋,变形,嘈杂,模糊,低对比度
图 2
开始睡着了
童话风格,课堂,金色长发少女,闭上眼睛,身着赤色美丽的校服,上半身,正面,坐在课桌前 丑陋,变形,嘈杂,模糊,低对比度
图 3
进入梦乡,梦到自己在丛林
童话风格,四周全是茂密的丛林,金色长发少女,站白色长裙,上半身,看向远方
丑陋,变形,嘈杂,模糊,低对比度
图 4
王子骑马而来
童话风格,四周全是茂密的丛林,一位英俊的王子,骑着白马,上半身
丑陋,变形,嘈杂,模糊,低对比度
图 5
两人相谈甚欢
童话风格,四周全是茂密的丛林,金色长发少女,一位英俊的王子,白色长裙,两个人一起聊天,开心,上半身
丑陋,变形,嘈杂,模糊,低对比度
图 6
两人一起舞蹈
童话风格,四周全是茂密的丛林,金色长发少女,白色长裙,一位英俊的王子,两个人一起舞蹈,浑身
丑陋,变形,嘈杂,模糊,低对比度
图 7
下课了,梦醒了
童话风格,课堂,金色长发少女,用右手揉眼睛,左手拿笔,闭上眼睛,身着赤色美丽的校服,上半身,正面,坐在课桌前 丑陋,变形,嘈杂,模糊,低对比度
图 8
又回到了学习生活中
童话风格,课堂,金色长发少女,惊醒, 惊奇,身着赤色美丽的校服,上半身,正面,坐在课桌前,墙上有下课铃
丑陋,变形,嘈杂,模糊,低对比度


免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

刘俊凯

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表