人工智能咨询培训老师叶梓 转载标明出处
文本到图像生成技术的核心目标是教会预训练模型根据输入的文本提示生成具有特定主题和风格的新颖图像。尽管已有多种微调技术被提出,但它们在同时处理个性化和风格化方面仍存在不足,导致生成的图像在个人身份和风格概念上出现不一致。
为了克服现有方法的局限性,华为的研究团队提出了块级LoRA方法。这种方法通过在Stable Diffusion(SD)模型的不同块上执行细粒度的低秩微调,生成与输入提示相符、目标身份明确且具有期望风格的图像。通过大量实验,研究团队证明了块级LoRA方法的有效性。
方法
之前提出的图像生成(T2I)个性化和风格化的方法是基于文本反演的方法将文本信息反向转换为个性化的视觉表示,增强基于扩散的生成模型的适应性和定制性。DreamBooth及其后续方法通过优化整个SD网络权重来学习特定主题的先验,从而在输出图像中实现更高的主题保真度。与此不同,以LoRA为代表的方法是通过不同的重新参数化解决了这一任务,这更为轻量级和高效。
LoRA最初是作为NLP领域大模型的微调方法提出的,后来被引入到SD模型中,用于高效的图像生成(T2I)。LoRA指出,预训练模型的权重矩阵具有低内在特征维度,因此可以将模型的权重更新分解为两个低维矩阵。在微调过程中,原始权重被冻结,只有矩阵A和B是可调的。这样,前向计算过程可以更新为h = W0x + BAx,其中h是输出特征图。
块级LoRA方法是对现有的LoRA(Low-Rank Adaptation)方法的一种改进,目的是为了解决在结合不同类型的全块微调LoRAs时生成结果不满意的问题。
通常SD(Stable Diffusion)的LoRA是通过在U-Net的所有块上执行低秩微调来实现的,这包括了LoCon(LoRA for Convolution Network)中进一步涉及的卷积层。然而,当将这些全块微调的LoRAs用于T2I生成时,往往得到的生成结果并不令人满意。为了改善这种情况,研究者们专注于研究U-Net的哪些部分应该进行微调,以实现更好的个性化和风格化。具体如下:
通过将LoRA矩阵的秩设置为零,可以跳过当前块的LoRA微调。这样,SD就会使用原始的预训练权重,而不是添加LoRA的权重。公式(2)展示了这一过程:其中,ℎ是输出特征图,
是预训练的权重,B 和 A 是LoRA中的低秩矩阵。
为了控制SD中U-Net的不同部分进行LoRA微调,研究者们将U-Net划分为几个部分,如图1所示。这包括四个内部块(in-blocks)、一个中间块(mid-block)和四个外部块(out-blocks)。通过这种设计,可以对U-Net的不同块执行细粒度的低秩微调,并分别评估不同设置在个性化和风格化任务中的生成性能。
实验
实验使用了多种数据集,其中包括Manga Face Dataset作为漫画风格LoRA的训练数据集。对于其他风格LoRA和角色LoRA,作者使用了自定义的训练数据集。每个数据集包含20张图像,每张图像重复25次,并伴有大约500张由基础模型生成的正则化图像。这一设置旨在增强模型的泛化能力,并减少过拟合的风险。
在训练过程中,研究者采用了Stable Diffusion 1.4作为基础的T2I生成模型,并设置了11,000步的微调步骤和2的批量大小。在推理阶段,使用了DPM 2M++ Karras作为采样器,采样步数为25,无分类器引导(CFG)的比例设为7.0,生成图像的分辨率与训练图像保持一致。为了进行公平比较,所有方法的推理提示和超参数都保持固定。
研究者将块级微调方法与原始的LoRA/LoCon方法进行了比较,如图2和图3所示。实验结果显示,块级LoRA/LoCon模型在个性化和风格化方面的表现优于LoRA/LoCon模型。LoRA/LoCon在生成具有目标风格的图像方面失败了,而块级LoRA/LoCon微调在个性化方面具有明显优势。
在消融研究中,研究者评估了三种不同类型的角色LoCon和风格LoCon的组合性能。每种块级LoCon组合都可以混合角色和风格。然而,如图4(a)所示,块级ID LoCon与风格LoCon的组合风格与风格LoCon输入不匹配,块级ID LoCon与块级风格LoCon的组合丢失了太多角色的个人细节。说明ID LoCon与块级风格LoCon的组合在消融研究中表现最佳,它不仅能够保持角色的个人细节,还能像LoCon输入一样改变绘画风格。
研究者还探索了在ID LoCon与块级LoCon的组合中应该保留哪些块。他们将块级LoCon块均匀地分成三部分,在每次训练过程中激活其中一部分。如图1所示,"上部块"是In-Block0 + Out-Block3,"中部块"是In-Block1 + Out-Block2,"下部块"是In-Block2 + Out-Block1。图4(b)提供了结果。可以看到,仅激活上部块时,即顶部输入块和顶部输出块,输出图像完美地保持了角色的细节和风格。仅激活中部块时,输出失去了风格,但角色的细节更多地显示在图片中。当仅激活下部块时,所有目标信息和概念都缺失了。
通过这些详细的实验设置和结果分析,展示了块级LoRA方法在提高文本到图像生成任务的个性化和风格化方面的有效性。
论文链接:https://arxiv.org/abs/2403.07500