文章目录
前言
经过task01的初次运行和大致了解,对文生图有了进一步的理解;
同时,过了task02的代码和过程的解读,也对原理和操作步骤有了更深刻的理解。
那咱么现在为了痛快的文生图,用task01的 后端页面看起来不太舒服,同时对于用户来说不友好;这就要开始今天的课题了。
一、ComfyUI的了解
1.认识ComfyUI
可以看出内容冗余,对于开发者来说是好的。但是对于使用者和新手来说,甚是不友好。 /
所以就有了 GUI-------------(图形用户界面是指采用图形方式显示的计算机操作用户界面。与早期计算机使用的命令行界面相比,除了降低用户的操作负担之外,对于新用户而言,图形界面对于用户来说在视觉上更易于接受,学习成本大幅下降,也让电脑的大众化得以实现。 )
对于咱们这方面,也有专门的ComfyUI .-------------------(GUI的一种,是基于节点工作的用户界面,主要用于操作图像的生成技术,ComfyUI 的特别之处在于它采用了一种模块化的设计,把图像生成的过程分解成了许多小的步骤,每个步骤都是一个节点。这些节点可以连接起来形成一个工作流程,这样用户就可以根据需要定制自己的图像生成过程。)
使用GUI图片如下:
再一看,改提示词和图片尺寸的地方,就显而易见了。
2. GUI的图片生成流程
二、Lora微调
1. Lora和微调简介
LoRA (Low-Rank Adaptation) 微调是一种用于在预训练模型上进行高效微调的技术。它可以通过高效且灵活的方式实现模型的个性化调整,使其能够适应特定的任务或领域,同时保持良好的泛化能力和较低的资源消耗。这对于推动大规模预训练模型的实际应用至关重要。(新型的微调技术/相比于全部参数调整)
微调:微调是机器学习中一种针对特定任务或用例调整预训练模型的过程。这样做可以使得模型更好地适应特定领域的需求。具体来说,它是基于已经在大规模数据集上预训练好的模型,使用特定数据集进行进一步训练,以提高模型在该领域的表现。例如,在生成式AI的基础模型训练中,微调可以是一种基本技术。(
理解的就是对原有的不满意,相对参数进行修改,以达到目的)
2.Lora微调的优势和详细内容
优势如下:
详细内容 :
3.Lora实例详解
来看Task02的Lora的代码:
import os
cmd = """
python DiffSynth-Studio/examples/train/kolors/train_kolors_lora.py \ # 选择使用可图的Lora训练脚本DiffSynth-Studio/examples/train/kolors/train_kolors_lora.py
--pretrained_unet_path models/kolors/Kolors/unet/diffusion_pytorch_model.safetensors \ # 选择unet模型
--pretrained_text_encoder_path models/kolors/Kolors/text_encoder \ # 选择text_encoder
--pretrained_fp16_vae_path models/sdxl-vae-fp16-fix/diffusion_pytorch_model.safetensors \ # 选择vae模型
--lora_rank 16 \ # lora_rank 16 表示在权衡模型表达能力和训练效率时,选择了使用 16 作为秩,适合在不显著降低模型性能的前提下,通过 LoRA 减少计算和内存的需求
--lora_alpha 4.0 \ # 设置 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),这可以加速训练并减少显存使用
""".strip()
os.system(cmd) # 执行可图Lora训练
参数表:
三,训练集的get
训练集:数据集是指一组相关的数据样本,通常用于机器学习、数据挖掘、统计分析等领域。数据集可以是数字、文本、图像、音频或视频等形式的数据,用于训练和测试机器学习算法和模型。
当我们进行图片生成相关的工作时,我们需要根据我们的需要选择合适的训练集(训练场景/数据类型/数据量等)。
总结
感觉挺好,但缺乏历练。