Part 1 ComfyUI 初探索
ComfyUI 是GUI的一种,是基于节点工作的用户界面,主要用于操作图像的生成技术,ComfyUI 的特别之处在于它采用了一种模块化的设计,把图像生成的过程分解成了许多小的步骤,每个步骤都是一个节点。这些节点可以连接起来形成一个工作流程,这样用户就可以根据需要定制自己的图像生成过程。
核心模块
模型加载器:Load Checkpoint 用于加载基础的模型文件,包含了Model、CLIP、VAE三部分
提示词管理器
采样器
解码器:VAE模块的作用是将Latent space中的embedding解码为像素级别的图像
Part 2 LoRA微调
核心思想:LoRA通过在预训练模型的关键层中添加低秩矩阵来实现。这些低秩矩阵通常被设计成具有较低维度的参数空间,这样它们就可以在不改变模型整体结构的情况下进行微调。在训练过程中,只有这些新增的低秩矩阵被更新,而原始模型的大部分权重保持不变。
W=AB
W=100100 A=100
k B=k
100
k:Rank
如果认为矩阵W的含金量比较小,则可以选择比较小的k; 反之,则选择比较大的k。
k越小,我们所需要学习的参数会变得更少。
优势:节省大量显存空间,减少学习成本;保持泛化能力;快速适应新任务。
UNet
负责根据输入的噪声和文本条件生成图像。在Stable Diffusion模型中,UNet接收由VAE编码器产生的噪声和文本编码器转换的文本向量作为输入,并预测去噪后的噪声,从而生成与文本描述相符的图像
VAE
生成模型,用于将输入数据映射到潜在空间,并从中采样以生成新图像。在Stable Diffusion中,VAE编码器首先生成带有噪声的潜在表示,这些表示随后与文本条件一起输入到UNet中
文本编码器
将文本输入转换为模型可以理解的向量表示。在Stable Diffusion模型中,文本编码器使用CLIP模型将文本提示转换为向量,这些向量与VAE生成的噪声一起输入到UNet中,指导图像的生成过程