Datawhale X 魔搭 AI夏令营:实战优化

part1:工具初探一ComfyUI应用场景探索

初识ComfyUI

GUI 是 "Graphical User Interface"(图形用户界面)的缩写。简单来说,GUI 就是你在电脑屏幕上看到的那种有图标、按钮和菜单的交互方式。

ComfyUI 是GUI的一种,是基于节点工作的用户界面,主要用于操作图像的生成技术,ComfyUI 的特别之处在于它采用了一种模块化的设计,把图像生成的过程分解成了许多小的步骤,每个步骤都是一个节点。这些节点可以连接起来形成一个工作流程,这样用户就可以根据需要定制自己的图像生成过程。

ComfyUI核心模块

核心模块由模型加载器、提示词管理器、采样器、解码器组成

模型加载器:Load Checkpoint用于加载基础的模型文件,包含了Model、CLIP、VAE三部分

采样器:用于控制模型生成图像,不同的采样取值会影响最终输出图像的质量和多样性。采样器可以调节生成过程的速度和质量之间的平衡。

ComfyUI图片生成流程

Part 2: LoRA 微调

LoRA 简介

LoRA (Low-Rank Adaptation) 微调是一种在预训练模型上进行高效微调的技术,能够在保持模型泛化能力的同时,灵活地适应特定任务或领域。它的优势包括高效的资源利用、快速的任务适应能力,以及对少量标注数据的良好适应性。

 LoRA 微调的原理

LoRA 在预训练模型的关键层中添加低秩矩阵,这些矩阵具有较低维度的参数空间。在训练过程中,仅更新这些低秩矩阵的参数,而模型的其他部分保持不变,从而实现高效的微调。

微调代码示例

import os
cmd = """
python DiffSynth-Studio/examples/train/kolors/train_kolors_lora.py \
  --pretrained_unet_path models/kolors/Kolors/unet/diffusion_pytorch_model.safetensors \
  --pretrained_text_encoder_path models/kolors/Kolors/text_encoder \
  --pretrained_fp16_vae_path models/sdxl-vae-fp16-fix/diffusion_pytorch_model.safetensors \
  --lora_rank 16 \
  --lora_alpha 4.0 \
  --dataset_path data/lora_dataset_processed \
  --output_path ./models \
  --max_epochs 1 \
  --center_crop \
  --use_gradient_checkpointing \
  --precision "16-mixed"
""".strip()
os.system(cmd)

参数详情

  • pretrained_unet_path: 指定预训练UNet模型路径。
  • pretrained_text_encoder_path: 指定预训练文本编码器路径。
  • pretrained_fp16_vae_path: 指定预训练VAE模型路径。
  • lora_rank: 设置LoRA的秩(rank),影响模型复杂度和性能。
  • lora_alpha: 控制微调强度。
  • dataset_path: 指定训练数据集路径。
  • output_path: 指定保存模型的路径。
  • max_epochs: 设置最大训练轮数。
  • center_crop: 启用图像的中心裁剪。
  • use_gradient_checkpointing: 启用梯度检查点以节省内存。
  • precision: 设置训练时的精度为混合16位。

UNet、VAE 和文本编码器的协作关系

  • UNet: 根据输入的噪声和文本条件生成图像。
  • VAE: 将输入数据映射到潜在空间,采样生成新图像。
  • 文本编码器: 将文本输入转换为向量表示,指导图像生成过程。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值