AiPaper
论文状态:已完成

Contrastive Test-Time Composition of Multiple LoRA Models for Image Generation

发表:2024/03/29
原文链接PDF 下载
价格:0.10
价格:0.10
已有 10 人读过
本分析由 AI 生成,可能不完全准确,请以原文为准。

TL;DR 精炼摘要

本文提出CLoRA,一种无需训练的测试时方法,动态调整多个LoRA模型的注意力图并生成语义掩码,有效融合多概念图像特征,解决了现有方法中注意力重叠、属性绑错和概念遗漏问题。实验证明CLoRA显著提升多LoRA组合生成图像的准确性和质量。

摘要

Low-Rank Adaptation (LoRA) has emerged as a powerful and popular technique for personalization, enabling efficient adaptation of pre-trained image generation models for specific tasks without comprehensive retraining. While employing individual pre-trained LoRA models excels at representing single concepts, such as those representing a specific dog or a cat, utilizing multiple LoRA models to capture a variety of concepts in a single image still poses a significant challenge. Existing methods often fall short, primarily because the attention mechanisms within different LoRA models overlap, leading to scenarios where one concept may be completely ignored (e.g., omitting the dog) or where concepts are incorrectly combined (e.g., producing an image of two cats instead of one cat and one dog). We introduce CLoRA, a training-free approach that addresses these limitations by updating the attention maps of multiple LoRA models at test-time, and leveraging the attention maps to create semantic masks for fusing latent representations. This enables the generation of composite images that accurately reflect the characteristics of each LoRA. Our comprehensive qualitative and quantitative evaluations demonstrate that CLoRA significantly outperforms existing methods in multi-concept image generation using LoRAs.

思维导图

论文精读

中文精读

1. 论文基本信息

1.1. 标题

对比式测试时多 LoRA 模型图像生成组合 (Contrastive Test-Time Composition of Multiple LoRA Models for Image Generation)

1.2. 作者

Tuna Han Salih Meral, Enis Simsar, Federico Tombari, Pinar Yanardag。作者主要来自弗吉尼亚理工大学 (Virginia Tech)、苏黎世联邦理工学院 (ETH Zürich)、慕尼黑工业大学 (TUM) 和谷歌 (Google)。

1.3. 发表期刊/会议

该论文作为预印本发表在 arXiv 上。虽然尚未指明具体的期刊或会议,但 arXiv 平台是计算机视觉和机器学习领域研究成果发布的重要渠道,具有较高的关注度和影响力。

1.4. 发表年份

2024年

1.5. 摘要

低秩适应 (Low-Rank Adaptation, LoRA) 已经成为图像生成模型个性化领域中强大且流行的技术,它能够高效地将预训练模型适应于特定任务,而无需进行全面的重新训练。虽然单个预训练 LoRA 模型在表示单一概念(例如特定品种的狗或猫)方面表现出色,但利用多个 LoRA 模型在单张图像中捕捉多种概念仍然是一个重大挑战。现有方法往往效果不佳,主要是因为不同 LoRA 模型内部的注意力机制存在重叠,导致一个概念被完全忽略(例如,遗漏了狗),或者概念被错误地组合(例如,生成两只猫而不是一只猫和一只狗)。

本文引入了 CLoRA,这是一种无需训练的方法,通过在测试时更新多个 LoRA 模型的注意力图,并利用这些注意力图创建语义掩码以融合潜在表示,从而解决了上述限制。这使得生成的组合图像能够准确反映每个 LoRA 的特征。全面的定性和定量评估表明,CLoRA 在使用 LoRA 进行多概念图像生成方面显著优于现有方法。

1.6. 原文链接

https://arxiv.org/abs/2403.19776v2 发布状态: 预印本 (v2 版本发布于 2024-03-28T18:58:43.000Z)

1.7. PDF 链接

https://arxiv.org/pdf/2403.19776v2.pdf

2. 整体概括

2.1. 研究背景与动机

论文试图解决的核心问题: 在使用预训练的扩散模型进行图像生成时,如何有效地组合多个 LoRA 模型来生成包含多种概念的图像。现有方法面临的主要问题是:

  1. 注意力重叠 (Attention Overlap): 多个 LoRA 模型在图像的相似区域产生注意力,导致一个 LoRA 的概念压倒另一个,或者概念混淆。
  2. 属性绑定 (Attribute Binding): 属于不同概念的特征被错误地结合在一起,导致生成图像与预期不符(例如,生成两只猫而不是一只猫和一只狗)。
  3. 概念忽略 (Concept Omission): 某些 LoRA 模型所代表的概念在最终生成图像中完全缺失。

为什么这个问题在当前领域是重要的: 随着扩散模型和 LoRA 技术的普及,个性化图像生成变得越来越重要。用户希望能够将多种特定概念(如特定角色、物体、风格)组合到一张图像中,以创建丰富的视觉叙事。现有的 LoRA 模型(例如 Civit.ai 上数以万计的模型)虽然在单一概念上表现优秀,但其组合能力不足极大地限制了用户创作的灵活性和模型的实用性。解决这一问题将极大地扩展 LoRA 模型的应用范围,并提升个性化图像生成的用户体验。

现有研究存在的挑战或空白 (Gap):

  • 简单权重组合: 例如加权线性组合,往往导致概念被忽略或结果不尽人意。
  • 训练合并: 训练系数矩阵以合并 LoRA 的方法,通常受限于合并 LoRA 的数量(例如,单个内容和风格 LoRA),或随着 LoRA 数量增加而性能不稳定。
  • 特殊 LoRA 变体: 某些方法需要训练特定的 LoRA 变体(如 EDLoRA),无法直接使用社区中广泛存在的标准 LoRA 模型。
  • 额外控制: 一些方法依赖于 ControlNet 定义的区域或现成的分割方法,这限制了无条件生成的能力,并且其效果严重依赖于辅助控制的准确性。
  • 注意力机制内部问题: 现有方法大多未能直接、有效地解决 LoRA 模型间的注意力重叠和属性绑定问题。

这篇论文的切入点或创新思路: CLoRA 的创新之处在于提出一种无需训练 (training-free)测试时 (test-time) 方法,直接在图像生成过程中,通过对比目标 (contrastive objective) 动态调整多个 LoRA 模型的注意力图,并利用这些调整后的注意力图生成语义掩码 (semantic masks) 来融合潜在表示 (latent representations)。这种方式避免了传统训练、特殊 LoRA 模型或额外控制的需要,直接解决了 LoRA 模型组合时的注意力冲突问题。

2.2. 核心贡献/主要发现

论文最主要的贡献:

  1. 提出 CLoRA 方法: 引入了一种基于对比目标的无需训练、测试时集成多个内容和风格 LoRA 的新方法。它通过动态更新潜在表示来调整注意力图,并使用语义掩码融合多个潜在表示。
  2. 解决注意力重叠和属性绑定: CLoRA 有效地解决了多 LoRA 组合时的注意力重叠和属性绑定问题,确保每个 LoRA 所代表的概念都能被准确、独立地反映在生成的图像中。
  3. 兼容性与实用性: 该方法不需要训练专门的 LoRA 变体,可以直接使用社区中现有的、即插即用 (plug-and-play) 的标准 LoRA 模型(例如 Civit.ai 上的 LoRA)。
  4. 性能卓越: 通过全面的定性和定量评估(包括 DINO 相似度、CLIP 对齐和用户研究),证明 CLoRA 在多概念图像生成方面显著优于现有方法。
  5. 高效性: 该方法在内存使用和运行时效率方面表现出色,能够有效地扩展以处理多个 LoRA 模型。
  6. 代码开源: 公开源代码和 LoRA 集合,以促进透明度和可复现性。

论文得出了哪些关键的结论或发现:

  • 通过在测试时应用对比目标和掩码潜在表示融合,可以有效地组合多个 LoRA 模型,生成符合用户意图的复杂多概念图像。
  • CLoRA 能够成功地避免现有方法中常见的概念忽略、混淆或错误绑定问题。
  • 相较于需要训练、特殊 LoRA 变体或额外控制(如边界框、姿态条件)的方法,CLoRA 提供了一种更灵活、更易于使用的解决方案,同时保持了卓越的生成质量。

3. 预备知识与相关工作

3.1. 基础概念

3.1.1. 扩散模型 (Diffusion Models)

扩散模型 (Diffusion Models) 是一类生成模型,它通过模拟一个逐渐向数据添加噪声的前向扩散过程,并学习一个逆向去噪过程来生成数据。

  • Stable Diffusion (SDv1.5): 本文方法基于 Stable Diffusion 1.5 实现,这是一个先进的文本到图像生成框架。它在自编码器 (Autoencoder) 的潜在空间 (latent space) 中运行。
    • 自编码器 (Autoencoder): 包含一个编码器 E\mathcal{E} 和一个解码器 D\mathcal{D}。编码器将输入图像 xx 映射到低维潜在代码 z=E(x)z = \mathcal{E}(x),解码器则从潜在表示重建图像,即 D(z)x\mathcal{D}(z) \approx x
    • 扩散过程: 逐步向原始潜在代码 z0z_0 添加噪声,在时间步 tt 生成 ztz_t
    • 去噪器 (Denoiser): 一个基于 UNet 的去噪器 ϵθ\epsilon_\theta 被训练来预测并去除噪声。
    • 训练目标: 其损失函数 L\mathcal{L} 的定义如下: L=Ezt,ϵN(0,I),c(P),t[ϵϵθ(zt,c(P),t)2] \mathcal { L } = \mathbb { E } _ { z _ { t } , \epsilon \sim \mathrm { N } ( 0 , \mathrm { I } ) , c ( \mathcal { P } ) , t } \left[ \| \epsilon - \epsilon _ { \theta } \big ( z _ { t } , c ( \mathcal { P } ) , t \big ) \| ^ { 2 } \right] 其中:
      • L\mathcal{L}:训练损失。
      • E[]\mathbb{E}[\cdot]:期望值。
      • ztz_t:在时间步 tt 的含噪声潜在代码。
      • ϵN(0,I)\epsilon \sim \mathrm{N}(0, \mathrm{I}):从标准正态分布中采样的噪声。
      • c(P)c(\mathcal{P}):从文本提示 P\mathcal{P} 派生出的条件信息。
      • tt:时间步。
      • 2\|\cdot\|^2:L2 范数(平方欧几里得距离),表示预测噪声 ϵθ\epsilon_\theta 和真实噪声 ϵ\epsilon 之间的差异。
      • ϵθ(zt,c(P),t)\epsilon_\theta(z_t, c(\mathcal{P}), t):UNet 去噪器预测的噪声,以 ztz_t、条件信息 c(P)c(\mathcal{P}) 和时间步 tt 为输入。

3.1.2. 交叉注意力机制 (Cross-Attention Mechanisms)

在 Stable Diffusion 中,文本提示 PP 通过 CLIP 模型被嵌入为序列 cc,然后通过交叉注意力机制馈送到 UNet 中。

  • 计算方式: 在这些层中,cc 被线性投影到键 (Keys, KK) 和值 (Values, VV),而 UNet 的中间表示被投影到查询 (Queries, QQ)。在时间 tt 的注意力 AtA_t 计算如下: At=Softmax(QKτ/d) A _ { t } = \operatorname { S o f t m a x } ( Q K ^ { \tau } / \sqrt { d } ) 其中:
    • QQ (Query):来自 UNet 的中间表示,代表当前图像区域想要查询的信息。
    • KK (Key):来自文本嵌入 cc,代表文本条件中的键信息。
    • VV (Value):来自文本嵌入 cc,代表文本条件中的值信息,用于加权求和。
    • QKTQK^T:查询和键的点积,衡量查询与每个键的相似度。
    • d\sqrt{d}:缩放因子,用于防止点积过大导致 softmax 函数梯度过小。
    • Softmax()\operatorname{Softmax}(\cdot):将相似度分数转换为注意力权重,使其和为1。
    • AtA_t:注意力图,可以重塑为 Rh×w×l\mathbb{R}^{h \times w \times l},其中 hhww 是特征图的高度和宽度(通常为 16×16,32×3216 \times 16, 32 \times 3264×6464 \times 64),ll 是文本嵌入序列的长度。本文工作使用 16×1616 \times 16 的注意力图,因为它们捕捉了最具语义意义的信息。

3.1.3. 低秩适应 (Low-Rank Adaptation, LoRA)

LoRA 是一种微调大型模型(最初用于 LLM)的技术,通过引入低秩分解矩阵来调整预训练模型的权重,同时冻结大部分原始权重。

  • 工作原理: 在 Stable Diffusion 的微调中,LoRA 应用于负责文本和图像连接的交叉注意力层。形式上,一个 LoRA 模型表示为一对低秩矩阵 (Wout,Win)(W_{\mathrm{out}}, W_{\mathrm{in}})。这些矩阵捕获了对预训练模型权重 WW 的调整。
  • 权重更新: 图像生成期间更新的权重计算如下: W=W+WinWout W ' = W + W _ { \mathrm { i n } } W _ { \mathrm { o u t } } 其中:
    • WW':更新后的权重。
    • WW:预训练模型的原始权重。
    • WinW_{\mathrm{in}}:低秩输入矩阵。
    • WoutW_{\mathrm{out}}:低秩输出矩阵。
  • 优势: 低秩特性确保 WoutW_{\mathrm{out}}WinW_{\mathrm{in}} 的维度远小于完整权重矩阵,从而使 LoRA 模型的文件大小大大减小(例如,一个 SDv1.5 模型为 3.44GB,而一个 LoRA 模型为 15-100MB),提高了效率和存储便利性。

3.1.4. 对比学习 (Contrastive Learning)

对比学习 (Contrastive Learning) 是一种在表示学习中非常强大的方法,其核心原则是在潜在嵌入空间中拉近相似数据点,同时推远不相似数据点。

  • 基本概念: 给定一个输入数据点 xXx \in \mathcal{X}x+x^+ 表示一个正样本对(xxx+x^+ 共享相同的标签),xx^- 表示一个负样本对(数据点具有不同的标签)。函数 f:XRNf: \mathcal{X} \to \mathbb{R}^N 是一个编码器,将输入 xx 映射到一个 NN 维嵌入向量。
  • InfoNCE 损失 (InfoNCE Loss): CLoRA 使用 InfoNCE 损失(也称为 NT-Xent)作为对比目标,因其快速收敛特性。

3.1.5. 注意力重叠 (Attention Overlap) 与 属性绑定 (Attribute Binding)

这是多概念图像生成中的两个关键挑战:

  • 注意力重叠: 当专门的 LoRA 模型在图像中重复地关注相似特征或区域时发生。这可能导致主导问题,其中一个 LoRA 模型可能会压倒其他模型的贡献,使生成过程偏向其特定属性或风格,从而牺牲平衡表示。例如,提示“一只 L4L_4 猫和一只 L5L_5 狗在森林里”,如果 L4L_4L5L_5 的注意力区域重叠,可能导致只生成一种动物或特征混合。
  • 属性绑定: 主要发生在涉及多个内容特定 LoRA 的场景中,原本旨在代表不同主题的特征模糊地融合在一起,未能保持每个概念的完整性和可识别性。例如,狗的特征与猫的特征混淆。

3.2. 前人工作

3.2.1. 改进文本到图像保真度的注意力方法 (Attention-based Methods for Improved Fidelity)

  • 单扩散模型中的注意力优化: 现有方法如 A-Star [1] 和 DenseDiffusion [29] 在图像生成过程中优化注意力。Chefer et al. [5] 解决了提示中被忽略的词元问题。Li et al. [34] 提出了解决遗漏对象和不正确属性绑定问题的独立目标函数。Phung et al. [39] 利用边界框作为额外约束来限制多主题生成。
  • 与 CLoRA 的区别: 这些方法主要在单个扩散模型内部解决注意力重叠和属性绑定问题,而 CLoRA 独特地解决了跨多个 LoRA 模型的问题。Meral et al. [37] 在单个扩散模型上使用对比方法,而 CLoRA 则在多个扩散模型(LoRA)上解决这些挑战,每个模型都针对不同的对象或属性进行了微调。

3.2.2. 个性化图像生成 (Personalized Image Generation)

  • 早期工作: 图像风格迁移 (image-based style transfer) [11, 19]、基于 CNN 的方法 [15, 24, 25] 和基于 GAN 的方法 [8, 13, 26, 27, 33]。
  • 扩散模型时代: 提供了卓越的质量和文本控制。
    • 主题表示学习: Textual Inversion [12] 和 DreamBooth [46] 专注于学习特定主题的表示。
    • 风格个性化: LoRA [47] 和 StyleDrop [51] 优化风格个性化。
    • 多概念学习: Custom Diffusion [32] 尝试多概念学习,但在联合训练和风格解耦方面面临挑战。
    • 注意力校准: Zhang et al. [58] 使用注意力校准来解耦单张图像中的多个概念以生成个性化图像。

3.2.3. 合并多个 LoRA 模型 (Merging Multiple LoRA Models)

这是与 CLoRA 最直接相关的领域。

  • 加权求和: Ryu [47] 提出的简单加权求和方法通常效果不佳。
  • 特殊 LoRA 变体: Mix-of-Show [16] 建议为每个概念重新训练特定的 EDLoRA 模型,限制了其对现有社区 LoRA 的适用性。
  • 混合专家模型: Wu et al. [54] 提出通过混合专家组合 LoRA,但这需要为每个领域训练可学习的门控函数。
  • 测试时 LoRA 组合: Zhong et al. [59] 提出了 Multi LoRA CompositeSwitch,但它们不直接操作注意力图,可能产生不理想的结果。
  • 合成新 LoRA: ZipLoRA [49] 基于风格和内容 LoRA 合成新的 LoRA 模型,但其方法在处理多个内容 LoRA 方面存在不足。
  • 使用分割: OMG [30] 利用现成的分割方法在生成过程中隔离主题,但其性能严重依赖于扩散模型的多对象生成保真度和底层分割模型的准确性。
  • 额外约束: Yang et al. [56] 提出了一种无需训练的方法,通过引入用户提供的边界框进行注入和隔离约束来解决概念混淆问题。
  • 正交适应 (Orthogonal Adaptation): Po et al. [40] 通过分离 LoRA 间的属性来减少干扰,并通过加权平均进行合并。但这使得训练复杂化,需要修改微调过程并依赖原始数据。
  • 对比适应: LoRACLR [50] 使用对比目标合并预训练 LoRA 模型以实现可扩展的多概念生成,但它在推理过程中依赖用户提供的控制条件。

3.3. 差异化分析

CLoRA 与上述方法的主要区别和创新点在于:

  • 直接解决注意力冲突: CLoRA 直接处理了多 LoRA 模型组合时固有的注意力重叠和属性绑定问题,而许多现有方法只是简单合并权重或依赖外部辅助。
  • 无需训练、测试时: 避免了重新训练、学习门控函数或特定 LoRA 变体的需要,这使得它能够即插即用社区中广泛存在的标准 LoRA 模型。
  • 无需额外控制: 不依赖于用户提供的边界框、姿态条件或现成的分割模型,实现了更通用的“无条件”多概念生成。
  • 结合对比学习与掩码融合: 独特地结合了对比目标来优化潜在表示和注意力图,并利用语义掩码进行精确的潜在表示融合,确保每个 LoRA 对图像的相关区域产生影响。

4. 方法论

CLoRA 是一种无需训练的测试时方法,旨在通过动态调整注意力图和融合潜在表示来解决多 LoRA 模型组合时的注意力重叠和属性绑定问题。

4.1. 方法原理

CLoRA 的核心思想是,在图像生成过程中,通过一个对比目标来优化潜在表示,使每个 LoRA 模型对应的概念在注意力图上保持独立和聚焦。同时,利用这些调整后的注意力图生成语义掩码,以精确控制每个 LoRA 对图像特定区域的影响,从而实现多个概念的准确组合。

4.2. 核心方法详解

CLoRA 的整体流程如图 2 所示。给定一个用户提供的文本提示(例如“An L1L_1 cat and an L2L_2 dog”)以及对应的 LoRA 模型 L1L_1L2L_2,CLoRA 通过以下步骤在测试时优化注意力图并融合潜在表示。

Figure 2. Overview of CLoRA, a training-free, test-time approach for composing multiple LoRA models. Our method accepts a userprovided text prompt, such as 'An `L _ { 1 }` cat and an `L _ { 2 }` dog,…
该图像是论文中图2的示意图,展示了CLoRA方法的整体流程。该流程接受文本提示及对应的多个LoRA模型,利用对比目标在测试时优化注意力图,解决注意力重叠和属性绑定问题,最终通过语义掩码融合潜变量生成多概念图像。

图 2. CLoRA 流程概述:一种无需训练的测试时方法,用于组合多个 LoRA 模型。我们的方法接受用户提供的文本提示(例如“An L1L_1 cat and an L2L_2 dog”)以及对应的 LoRA 模型 L1L_1L2L_2。CLoRA 应用测试时优化到注意力图上,以使用对比目标解决注意力重叠和属性绑定问题。

4.2.1. 提示分解和变体生成

为了在对比学习中形成正负样本对,CLoRA 会根据原始用户提示生成三种变体。假设原始提示为“An L1S1L_1 S_1 and an L2S2L_2 S_2”(例如,“An L1L_1 cat and an L2L_2 dog”),其中 L1L_1L2L_2 是 LoRA 模型, S1S_1S2S_2 是它们所代表的概念。

  1. 原始提示 (Original Prompt): “an S1S_1 and an S2S_2”。

  2. L1L_1-应用提示 (L1L_1-applied prompt): “an L1S1L_1 S_1 and an S2S_2”。这个提示将 L1L_1 LoRA 显式地与概念 S1S_1 关联。

  3. L2L_2-应用提示 (L2L_2-applied prompt): “an S1S_1 and an L2S2L_2 S_2”。这个提示将 L2L_2 LoRA 显式地与概念 S2S_2 关联。

    然后,使用 CLIP 模型生成这些提示对应的文本嵌入 (text embeddings)。如果 LoRA 训练过程中对文本编码器进行了微调,则使用微调后的文本编码器;否则,使用基础模型的文本编码器。这些提示变体将用于在对比目标中形成正负样本对。

4.2.2. 概念分组 (Concept Grouping)

在图像生成过程中,Stable Diffusion 利用交叉注意力图来引导每个扩散步骤中对特定图像区域的注意力。为了解决注意力重叠和属性绑定问题,CLoRA 对这些交叉注意力图进行分类,创建概念组。

  • 概念组 C1C_1 (Concept Group C1C_1): 包含与概念 S1S_1 和 LoRA L1L_1 相关的注意力图。具体来说,它包括:
    • 来自原始提示S1S_1 的交叉注意力图。
    • 来自**L1L_1-应用提示**的 L1L_1S1S_1 的交叉注意力图。
    • 来自**L2L_2-应用提示**的 S1S_1 的交叉注意力图。
  • 概念组 C2C_2 (Concept Group C2C_2): 包含与概念 S2S_2 和 LoRA L2L_2 相关的注意力图。具体来说,它包括:
    • 来自原始提示S2S_2 的交叉注意力图。

    • 来自**L1L_1-应用提示**的 S2S_2 的交叉注意力图。

    • 来自**L2L_2-应用提示**的 L2L_2S2S_2 的交叉注意力图。

      这种分组确保扩散过程在整合 LoRA 引入的风格变化的同时,对每个概念保持连贯的理解。分离这些概念有助于防止不同概念之间的注意力重叠,确保提示的每个元素都得到忠实表示。

4.2.3. 对比目标 (Contrastive Objective)

CLoRA 在推理期间设计了一个对比目标,以保持与输入提示的一致性。它使用 InfoNCE 损失形式,以其快速收敛特性。损失函数将交叉注意力图对进行处理,将同一组内的对作为正样本,将不同组的对作为负样本。

  • 正样本对 (Positive Pairs): 例如,对于文本提示“An L1L_1 cat and an L2L_2 dog”,以及对应的概念组 C1C_1(“cat”和 L1L_1)和 C2C_2(“dog”和 L2L_2),概念组 C1C_1 内部的注意力图形成正样本对。这意味着我们希望原始提示中“cat”的注意力图与 L1L_1-应用提示中 L1L_1 的注意力图彼此接近,因为我们希望 L1L_1 LoRA 与其对应的对象“cat”对齐。

  • 负样本对 (Negative Pairs): 概念组 C1C_1C2C_2 之间的注意力图(例如,原始提示中“cat”和“dog”的注意力图)形成负样本对。我们希望这些注意力图相互排斥,以避免注意力重叠问题。

    单个正样本对的损失函数表达式为: L=logexp(sin(Aj,Aj+)/τ)n{j+,j1,jN}exp(sin(Aj,An)/τ) \mathcal { L } = - \log \frac { \exp ( \sin ( A ^ { j } , A ^ { j ^ { + } } ) / \tau ) } { \sum _ { n \in \{ j ^ { + } , j _ { 1 } ^ { - } , \cdots j _ { N } ^ { - } \} } \exp ( \sin ( A ^ { j } , A ^ { n } ) / \tau ) } 其中:

  • L\mathcal{L}:计算的 InfoNCE 损失。

  • sin(u,v)\sin(u, v):余弦相似度 (cosine similarity),定义为 uTv/uv\boldsymbol{u}^T \cdot \boldsymbol{v} / \Vert \boldsymbol{u} \Vert \Vert \boldsymbol{v} \Vert

    • uTv\boldsymbol{u}^T \cdot \boldsymbol{v}:向量 uuvv 的点积。
    • u\Vert \boldsymbol{u} \Vert:向量 uu 的 L2 范数(模长)。
  • AjA^j:锚点 (anchor) 注意力图。

  • Aj+A^{j^+}:与 AjA^j 形成正样本对的注意力图。

  • AnA^n:与 AjA^j 形成负样本对的注意力图。

  • τ\tau:温度参数 (temperature),用于调整相似度分布的平滑度。

  • NN:包含 AjA^j 的负样本对的数量。 分母包括一个正样本对和所有负样本对。整体 InfoNCE 损失在所有正样本对上取平均。

4.2.4. 潜在表示优化 (Latent Optimization)

损失函数 L\mathcal{L} 在扩散过程中引导潜在表示 (latents) 的更新。潜在表示的更新是迭代进行的,类似于 Chefer et al. [5] 和 Agarwal et al. [1] 的方法: zt=ztαtztL z _ { t } ^ { \prime } = z _ { t } - \alpha _ { t } \nabla _ { z _ { t } } \mathcal { L } 其中:

  • ztz_t':更新后的潜在表示。
  • ztz_t:当前时间步 tt 的潜在表示。
  • αt\alpha_t:在时间步 tt 的学习率。
  • ztL\nabla_{z_t} \mathcal{L}:损失函数 L\mathcal{L} 对潜在表示 ztz_t 的梯度,指示了如何调整 ztz_t 以减少损失。

4.2.5. 掩码潜在表示融合 (Masked Latent Fusion)

在扩散过程中的反向步骤之后,CLoRA 将 Stable Diffusion 生成的潜在表示与来自额外 LoRA 模型的潜在表示结合起来。为了确保每个 LoRA 只影响图像的相关区域,引入了一个掩码机制。

  • 掩码创建:

    1. 从每个 LoRA 应用提示中提取相关词元的注意力图。例如,对于 L1L_1,使用 L1L_1-应用提示“an L1S1L_1 S_1 and an S2S_2”中词元 L1L_1S1S_1 对应的注意力图。
    2. 对这些注意力图应用阈值操作,类似于 Tang et al. [53] 描述的语义分割方法,以创建二值掩码。对于注意力图中的每个位置 (x, y),二值掩码值 M[x, y] 通过以下公式确定: M[x,y]=I(A[x,y]λmaxi,jA[i,j]) M [ x , y ] = \mathbb { I } \left( A [ x , y ] \geq \lambda \operatorname* { m a x } _ { i , j } A [ i , j ] \right) 其中:
      • M[x, y]:二值掩码的输出值。
      • A[x, y]:在位置 (x, y) 处对应词元的注意力图值。
      • I()\mathbb{I}(\cdot):指示函数 (indicator function),如果条件为真则输出 1(否则为 0)。
      • λ\lambda:阈值参数,介于 0 和 1 之间。 这个阈值处理确保只有注意力值超过图中最大注意力值一定百分比的区域才被包含在掩码中。
  • 多词元掩码: 当多个词元对单个 LoRA 做出贡献时(例如,对于 L1L_1 的“L1L_1”和“S1S_1”),对这些单独掩码执行并集 (union) 操作,以确保任何接收到任一词元注意力的区域都包含在该 LoRA 的最终掩码中。

  • 融合过程: 这种掩码过程将每个 LoRA 的影响限制在相关区域,确保生成的图像在整合 LoRA 指定的风格元素的同时保持其完整性。

    • 风格 LoRA 的使用模式: 风格 LoRA 既可以全局应用于整个组合以影响所有元素,也可以限制在特定主题上以实现选择性风格化。

5. 实验设置

5.1. 数据集

由于缺乏用于组合多个 LoRA 模型的标准化基准,作者编译了一套包含 131 个 LoRA 模型和 200 个提示的数据集。

  • 自定义数据集 (Custom collection):
    • 通过 Stable Diffusion 社区流行的“角色设定表技巧 (character sheet trick)”生成了自定义角色,例如卡通风格的猫和狗。
    • 包含 20 个独特的角色,每个角色训练一个 LoRA。
  • CustomConcept101:
    • 使用了流行的 CustomConcept101 数据集 [32],其中包含各种多样化对象,如毛绒兔子、花朵和椅子。

    • 所有 101 个概念都被利用。

      总计 131 个 LoRA 模型。这些模型与 200 个提示配对,例如“A plushie bunny and a flower in the forest”,其中“plushie bunny”和“flower”都有相应的 LoRA 模型。

以下是原文提供的一些实验提示示例:

  • A cat and a dog in the mountain (blackcat, browndog)
  • A cat and a dog at the beach (blackcat, browndog)
  • A cat and a dog in the street (blackcat, browndog)
  • A cat and a dog in the forest (blackcat, browndog)
  • A plushie bunny and a flower in the forest (plushie_bunny and flower_1)
  • A cat and a flower on the mountain (blackcat, flower_1)
  • A cat and a chair in the room (blackcat, furniture_1)
  • A cat watching a garden scene intently from behind a window, eager to explore. (blackcat, scene_garden)
  • A cat playfully batting at a Pikachu toy on the floor of a child's room. (blackcat, toy-pikachu1)
  • A cat cautiously approaching a plushie tortoise left on the patio. (blackcat, plushie_tortoise)
  • A cat curiously inspecting a sculpture in the garden, adding to the scenery. (blackcat, scene_sculpture1)

5.2. 评估指标

5.2.1. DINO 相似度 (DINO Similarity)

DINO (Self-supervised Vision Transformers) 是一种自监督学习的视觉骨干网络,能够学习到丰富的、具有语义意义的图像特征表示。它提供图像内容的层次化表示,从而实现对每个 LoRA 如何贡献于合并图像特定方面的更详细分析。

在 CLoRA 的评估中,DINO 相似度用于量化合并图像与单个 LoRA 输出之间的特征对齐程度。

  • 计算步骤:
    1. 针对提示的子组件(例如,“L1L_1 cat”和“L2L_2 flower”)使用每个单独的 LoRA 生成单独的输出图像。
    2. 提取合并图像和每个单独 LoRA 输出的 DINO 特征。
    3. 计算合并图像的 DINO 特征与相应单个 LoRA 输出特征之间的余弦相似度。
  • 概念定义: DINO 相似度衡量两张图像在语义层面上的相似程度,通过比较它们经过 DINO 模型提取出的高级特征向量的余弦相似度来判断。值越高表示语义相似度越高。
  • 数学公式: DINO 相似度通常采用余弦相似度计算。给定两个 DINO 特征向量 F1F_1F2F_2,它们的余弦相似度为: CosineSimilarity(F1,F2)=F1F2F1F2 \text{CosineSimilarity}(F_1, F_2) = \frac{F_1 \cdot F_2}{\|F_1\| \|F_2\|}
  • 符号解释:
    • F1,F2F_1, F_2:表示两张图像(例如,合并图像和单个 LoRA 输出图像)的 DINO 特征向量。

    • F1F2F_1 \cdot F_2:表示向量 F1F_1F2F_2 的点积。

    • F1,F2\|F_1\|, \|F_2\|:表示向量 F1F_1F2F_2 的 L2 范数(欧几里得长度)。

      在此基础上,论文提出了三个 DINO-based 指标:

  1. 平均 DINO 相似度 (Average DINO Similarity):
    • 概念定义: 反映合并图像与所有单独 LoRA 参照输出之间整体对齐程度的平均值。
    • 数学公式: 假设有 KK 个 LoRA 模型,每个 LoRA kk 对应一个参照输出图像 IkI_k 和其 DINO 特征 FIkF_{I_k}。合并图像为 IMI_M 及其 DINO 特征 FIMF_{I_M}Avg DINO Sim=1Kk=1KCosineSimilarity(FIM,FIk) \text{Avg DINO Sim} = \frac{1}{K} \sum_{k=1}^{K} \text{CosineSimilarity}(F_{I_M}, F_{I_k})
    • 符号解释:
      • KK:使用的 LoRA 模型数量。
      • FIMF_{I_M}:合并图像的 DINO 特征向量。
      • FIkF_{I_k}:第 kk 个 LoRA 参照输出图像的 DINO 特征向量。
      • CosineSimilarity(,)\text{CosineSimilarity}(\cdot, \cdot):余弦相似度函数。
  2. 最小 DINO 相似度 (Minimum DINO Similarity):
    • 概念定义: 衡量合并图像与最不相似的 LoRA 参照输出之间的余弦相似度。该指标关注方法在所有 LoRA 中保持一致性的“最差表现”。
    • 数学公式: Min DINO Sim=mink=1,,K(CosineSimilarity(FIM,FIk)) \text{Min DINO Sim} = \min_{k=1,\dots,K} \left( \text{CosineSimilarity}(F_{I_M}, F_{I_k}) \right)
    • 符号解释: 与平均 DINO 相似度相同,min\min 函数取所有 LoRA 参照输出中最小的相似度。
  3. 最大 DINO 相似度 (Maximum DINO Similarity):
    • 概念定义: 识别合并图像中影响最大的 LoRA 参照图像。该指标关注哪个 LoRA 的概念在最终图像中得到最强烈的体现。
    • 数学公式: Max DINO Sim=maxk=1,,K(CosineSimilarity(FIM,FIk)) \text{Max DINO Sim} = \max_{k=1,\dots,K} \left( \text{CosineSimilarity}(F_{I_M}, F_{I_k}) \right)
    • 符号解释: 与平均 DINO 相似度相同,max\max 函数取所有 LoRA 参照输出中最大的相似度。

5.2.2. CLIP 相似度 (CLIP Similarity)

CLIP (Contrastive Language-Image Pre-training) 是一种多模态模型,可以计算图像与文本之间的相似度,或图像与图像之间的相似度。

  1. CLIP-I (Image-to-Image Similarity):
    • 概念定义: 量化生成的图像与作为参考的真实图像(或由单个 LoRA 生成的图像)在 CLIP 嵌入空间中的相似程度。它衡量图像内容和风格的视觉一致性。
    • 数学公式: 采用余弦相似度。给定两张图像的 CLIP 嵌入 Eimg1E_{img1}Eimg2E_{img2}CLIP-I Sim=CosineSimilarity(Eimg1,Eimg2)=Eimg1Eimg2Eimg1Eimg2 \text{CLIP-I Sim} = \text{CosineSimilarity}(E_{img1}, E_{img2}) = \frac{E_{img1} \cdot E_{img2}}{\|E_{img1}\| \|E_{img2}\|}
    • 符号解释:
      • Eimg1,Eimg2E_{img1}, E_{img2}:两张图像(例如,合并图像和单个 LoRA 输出图像)的 CLIP 图像嵌入向量。
      • \cdot:点积。
      • \|\cdot\|:L2 范数。
  2. CLIP-T (Image-to-Text Similarity):
    • 概念定义: 衡量生成的图像与其对应的文本提示在 CLIP 嵌入空间中的语义对齐程度。它评估图像在多大程度上符合文本描述。
    • 数学公式: 采用余弦相似度。给定图像的 CLIP 嵌入 EimgE_{img} 和文本提示的 CLIP 嵌入 EtextE_{text}CLIP-T Sim=CosineSimilarity(Eimg,Etext)=EimgEtextEimgEtext \text{CLIP-T Sim} = \text{CosineSimilarity}(E_{img}, E_{text}) = \frac{E_{img} \cdot E_{text}}{\|E_{img}\| \|E_{text}\|}
    • 符号解释:
      • EimgE_{img}:生成的图像的 CLIP 图像嵌入向量。
      • EtextE_{text}:对应文本提示的 CLIP 文本嵌入向量。
      • \cdot:点积。
      • \|\cdot\|:L2 范数。

5.2.3. 用户研究 (User Study)

  • 概念定义: 通过人类评估员对生成图像的感知质量和忠实度进行主观评分。这种定性指标补充了自动度量,反映了用户对生成结果的满意度。
  • 评估方式: 50 名参与者通过 Prolific 平台进行评分。每位参与者看到每种方法生成的四张图像,并被要求对每种方法保留 LoRA 所代表概念的忠实度进行评分(从 1 =“不忠实”到 5 =“非常忠实”)。
  • 数学公式: 论文中未提供具体的数学公式,但通常是计算所有用户评分的平均值和标准差。
  • 符号解释: 1-5 的 Likert 量表评分。

5.3. 对比基线

论文将 CLoRA 的结果与以下基线方法进行了比较:

  • LoRA-Merge [47]: 将多个 LoRA 作为加权组合进行合并的基线方法。
  • ZipLoRA [49]: 基于提供的 LoRA 模型合成新 LoRA 模型的方法。
  • Mix-of-Show [16]: 需要训练特定 LoRA 类型(EDLoRA)的方法。论文在实验中为了公平比较,未启用其额外的条件控制。
  • Custom Diffusion [32]: 旨在实现文本到图像扩散的多概念定制。
  • MultiLoRA [59]: 论文使用了其 Composite 模式,因为该模式性能优于 Switch 模式。
  • OMG [30]: 利用现成的分割方法在生成过程中隔离主题。
  • LoRA-Composer [56]: 也是测试时方法,但需要用户提供边界框。
  • Orthogonal Adaptation [40]: 通过强制约束分离 LoRA 间的属性以减少干扰。

5.4. 实现细节

  • 基础模型: Stable Diffusion v1.5 (SDv1.5)。
  • 随机种子: 每个提示使用 10 个随机种子。
  • 迭代次数: 运行 50 次迭代。
  • 优化迭代: 遵循 Chefer et al. [5] 的方法,在迭代 i{0,10,20}i \in \{0, 10, 20\} 中应用优化,并在 i=25i = 25 后停止进一步优化,以防止产生伪影 (artifacts)。
  • 对比学习参数: 对比学习中的温度参数 τ\tau 设置为 0.5
  • 硬件: 图像生成在 NVIDIA V100 GPU 上执行。
  • 效率: 组合两个 LoRA 大约需要 25 秒。在 NVIDIA H100 GPU 上,可以成功组合多达八个 LoRA。

6. 实验结果与分析

6.1. 核心结果分析

6.1.1. 定性结果 (Qualitative Results)

图 1 和图 4 展示了 CLoRA 的定性性能。

该图像是图示,展示了CLoRA与传统LoRA合并方法在多概念图像生成中的对比,包含不同概念(女性、花、风格与猫、狗)对应的生成结果及其注意力热力图,突出CLoRA通过更新多模型注意力图实现更准确的概念融合。
该图像是图示,展示了CLoRA与传统LoRA合并方法在多概念图像生成中的对比,包含不同概念(女性、花、风格与猫、狗)对应的生成结果及其注意力热力图,突出CLoRA通过更新多模型注意力图实现更准确的概念融合。

图 1. CLoRA 能够同时无缝地组合多个 LoRA。使用预训练 LoRA 模型,例如 L1L_1 代表一个人,L2L_2 代表一种特定类型的花,目标是将与不同概念 LoRA 相关的注意力分离。

该图像是多概念图像生成示意图,展示了利用不同LoRA模型分别控制猫、狗、运河、自行车、夹克、熊猫、鞋子和植物在多种场景组合中的生成效果。图中通过注释清晰标示每个LoRA模型所代表的概念,展示了CLoRA方法在多概念复合生成中的应用。
该图像是多概念图像生成示意图,展示了利用不同LoRA模型分别控制猫、狗、运河、自行车、夹克、熊猫、鞋子和植物在多种场景组合中的生成效果。图中通过注释清晰标示每个LoRA模型所代表的概念,展示了CLoRA方法在多概念复合生成中的应用。

图 4. 定性结果:CLoRA 能够成功组合多个 LoRA。

CLoRA 的优势:

  • 多内容 LoRA 组合: 成功地将猫和狗等多个内容 LoRA 组合到不同的背景中,如山脉或月亮(图 1 和图 4)。
  • 内容与场景 LoRA 组合: 能将内容 LoRA(如猫)与场景 LoRA(如运河)结合,使其置于特定场景中(图 4)。
  • 多样化 LoRA 组合: 能够处理涉及不同 LoRA 的组合,例如猫与自行车或服装(图 4)。
  • 多于两个 LoRA 的组合: 能够处理多于两个 LoRA 的组合,例如图 4 右下角展示了熊猫、鞋子和植物的组合。

与基线方法的定性比较 (图 3): 图 3 展示了 CLoRA 与 Mix-of-ShowMultiLoRALoRA-MergeZipLoRACustom Diffusion 的定性比较,重点是动物-动物和物体-物体组合。

Figure 3. Qualitative Comparison of CLoRA, Mix of Show, MultiLoRA, LoRA-Merge, ZipLoRA and Custom Diffusion. Our method can generate compositions that faithfully represent the LoRA concepts, whereas…
该图像是论文中图3的对比示意图,展示了CLoRA与多种方法在多LoRA模型复合生成图像中的定性表现。图中含三组不同物品组合,并显示CLoRA生成的图像更准确表现了各LoRA概念,其他方法则存在概念遗漏或混淆。

图 3. CLoRA、Mix-of-Show、MultiLoRA、LoRA-Merge、ZipLoRA 和 Custom Diffusion 的定性比较。我们的方法可以生成忠实代表 LoRA 概念的组合,而其他方法经常忽略其中一个 LoRA,并为两个主题生成单个 LoRA 概念。

  • 注意力重叠与概念混淆问题:
    • 在提示“An L1L_1 cat and an L2L_2 penguin in the house”的示例中(L1L_1 代表猫 LoRA,L2L_2 代表毛绒企鹅 LoRA):
      • Mix-of-Show 将两个物体混合,生成两只毛绒企鹅(忽略猫)或一只具有毛绒特征的猫。
      • MultiLoRA 未能重现特定的 LoRA 模型,生成两只猫或两只企鹅。
      • LoRA-Merge 生成的猫与意图 LoRA 一致,但未能准确捕捉企鹅。
      • ZipLoRA 经常未能包含毛绒企鹅,而是创建了两只猫,这受到其组合多个内容 LoRA 的设计限制。
      • Custom Diffusion 经常完全忽略猫 LoRA,只专注于生成毛绒企鹅。
  • CLoRA 的表现: CLoRA 忠实地捕捉了 LoRA 模型中的两个概念,没有出现注意力重叠问题。它成功地在组合中生成了两个元素。
  • 属性绑定示例: 图 3 中部示例显示,兔子 LoRA 的属性倾向于与狗 LoRA 混合,导致生成的狗展现出兔子的毛绒特征,而 CLoRA 能够有效避免这种绑定。

三个 LoRA 模型的组合 (图 5a):

该图像是论文中的实验结果插图,展示了使用三种不同LoRA模型组合生成图像的对比效果。图片分为三部分,分别展示了三种LoRA组合、多个人体主题组合以及女性与风格的多种组合,突出CLoRA方法在多概念图像合成中的优势。
该图像是论文中的实验结果插图,展示了使用三种不同LoRA模型组合生成图像的对比效果。图片分为三部分,分别展示了三种LoRA组合、多个人体主题组合以及女性与风格的多种组合,突出CLoRA方法在多概念图像合成中的优势。

图 5. (a) 成功使用三个 LoRA 的 CLoRA 定性结果。(b) 人类主题与对象 LoRA 的组合。(c) 两个主题和一个风格 LoRA 的组合。

CLoRA 能够成功地在复合图像中保持每个 LoRA 的特征,而其他方法在创建连贯组合时会遇到困难,通常会混合多个模型。

人类主题组合 (图 5b): CLoRA 可以无缝地将主题与物体组合,保留每个 LoRA 的独特属性,而其他方法通常难以有效整合这两个元素。

风格 LoRA 组合 (图 5c): CLoRA 能够融合风格 LoRA 和概念 LoRA。结果显示,CLoRA 捕捉了每个内容 LoRA 的独特特征(例如,花朵和人物),同时将风格 LoRA 一致地应用于整个图像。

处理多类对象和相似主体 (图 10, 13):

该图像是对比测试中的多LoRA模型融合生成的示意图,展示了两种不同猫的LoRA模型(L1和L2)在不同场景下(城堡前和花丛中)的组合效果。左侧为原始单一LoRA图像,中间和右侧为融合后生成的多概念图像,体现了CLoRA方法对多LoRA模型在测试时融合处理的能力。
该图像是对比测试中的多LoRA模型融合生成的示意图,展示了两种不同猫的LoRA模型(L1和L2)在不同场景下(城堡前和花丛中)的组合效果。左侧为原始单一LoRA图像,中间和右侧为融合后生成的多概念图像,体现了CLoRA方法对多LoRA模型在测试时融合处理的能力。

图 10. CLoRA 能够使用相似的 LoRA 生成图像。

该图像是一组插图,展示了由多个LoRA模型组合生成的人像照片,体现不同人物和背景场景的多样化与自然融合,验证了论文提出方法在多概念图像生成中的效果。
该图像是一组插图,展示了由多个LoRA模型组合生成的人像照片,体现不同人物和背景场景的多样化与自然融合,验证了论文提出方法在多概念图像生成中的效果。

图 13. 复杂的场景中多主体图像的定性研究。

CLoRA 能够处理包含来自同一超类别的多个对象的提示(例如,多个人或两只猫)。由于 CLoRA 将 LoRA 分配给单个词元,并且其分离机制依赖于 LoRA 特定的注意力组,而非粗粒度类别标签,因此能够有效处理此类情况。它在 3-5 个 LoRA 的组合中表现出色,与需要特殊条件(如姿态或分割)来强制分离的 SOTA 方法相比,无需辅助输入即可达到可比的性能。

复杂互动场景 (图 11):

Figure 11. Qualitative Results showing that CLoRA is capable of composing images in complex interacting scenes.
该图像是论文中展示CLoRA方法在复杂互动场景中多概念图像合成的插图。左侧展示分别代表单一概念的猫和狗的LoRA模型,中间和右侧展示同时包含这两种动物的合成图像,体现了CLoRA能够准确融合多个LoRA模型的能力。

图 11. 定性结果显示 CLoRA 能够在复杂的互动场景中组合图像。

CLoRA 能够处理包含许多对象(例如,瓶子、盘子、背景中的大海,或同一场景中的船和球)的视觉复杂场景。这些视觉效果表明每个 LoRA 主体都保留了其独特的属性,没有任何跨主体泄漏。

与 LoRA-Composer 比较 (图 12):

该图像是对比实验的插图,展示了本文提出方法(Ours)与LoRA-Composer带和不带边框方法在多概念图像生成中的效果对比。图中左侧为单一LoRA模型示例,中间和右侧分别展示三种方法生成含猫和狗的组合图像,突出本文方法更准确地融合多个LoRA的特征。
该图像是对比实验的插图,展示了本文提出方法(Ours)与LoRA-Composer带和不带边框方法在多概念图像生成中的效果对比。图中左侧为单一LoRA模型示例,中间和右侧分别展示三种方法生成含猫和狗的组合图像,突出本文方法更准确地融合多个LoRA的特征。

图 12. CLoRA 与 LoRA-Composer 及其带和不带边界框的定性比较。

LoRA-Composer 虽然也是测试时方法,但需要用户提供边界框,这限制了其实用性和易用性。LoRA-Composer 还限于特定模型(如 ED-LoRA),且与 Civit.ai 上的社区 LoRA 不兼容,并且内存需求更高(60GB vs. CLoRA 的 25GB)。图 12 展示,CLoRA 在没有边界框或额外条件的情况下,仍能持续生成连贯的多概念组合。

与 OMG 比较 (图 15):

图 15. CLoRA 与 OMG 的定性比较。

OMG 依赖现成的分割方法来隔离主题,其性能严重依赖于分割模型的准确性。分割错误可能导致不完整或不正确的生成。此外,OMG 依赖于 Stable Diffusion 生成的基础图像,因此也面临注意力重叠和属性绑定问题。如果基础模型未能生成提示中的所有对象,OMG 也无法产生所需组合。CLoRA 绕过了对显式分割的需求,通过直接更新注意力图和融合潜在表示,确保每个概念被准确捕捉和保留。

与 Orthogonal Adaptation 比较 (图 14):

Figure 14. Qualitative comparison with Orthogonal Adaptation. CLoRA achieves consistent multi-concept compositions without additional conditions like sketches or key points, unlike Orthogonal Adaptat…
该图像是论文中图14的插图,展示了CLoRA与正交适配方法在多概念图像生成上的定性比较。CLoRA无需额外条件即可实现准确的猫狗合成,而正交适配在无条件输入时表现不佳。

图 14. CLoRA 与 Orthogonal Adaptation 的定性比较。CLoRA 在没有草图或关键点等额外条件的情况下,实现了连贯的多概念组合,而 Orthogonal Adaptation 在没有用户提供条件时无法生成准确的图像。

Orthogonal Adaptation 通过强制约束分离 LoRA 间的属性。虽然减少了干扰,但需要额外的用户提供条件(如草图或关键点)以确保准确的多概念组合。图 14 显示,在没有这些条件时,Orthogonal Adaptation 难以生成准确的图像。CLoRA 无缝集成多个 LoRA 模型,同时保留个体属性,生成更连贯和自然的组合。

6.1.2. 定量结果 (Quantitative Results)

以下是原文 Table 1a 的结果:

LoRA MergeCompositeSwitchZipLoRAMix-of-ShowOurs
Min. ONIO0.376 ± 0.0410.288 ± 0.0490.307 ± 0.0550.369 ± 0.0360.407 ± 0.0350.447 ± 0.035
Avg.0.472 ± 0.0360.379 ± 0.0450.395 ± 0.0530.496 ± 0.0300.526 ± 0.0240.554 ± 0.028
Max.0.504 ± 0.0380.417 ± 0.0460.432 ± 0.0550.533 ± 0.0320.564 ± 0.0240.593 ± 0.024
Min.0.641 ± 0.0290.614 ± 0.0350.619 ± 0.0390.659 ± 0.0220.664 ± 0.0230.683 ± 0.017
IPD Avg.0.683 ± 0.0290.654 ± 0.0350.659 ± 0.0360.707 ± 0.0210.712 ± 0.0220.725 ± 0.017
Max.0.714 ± 0.0280.690 ± 0.0330.695 ± 0.0360.740 ± 0.0210.744 ± 0.0230.756 ± 0.017
CLIP-T0.814 ± 0.0540.833 ± 0.0910.822 ± 0.0890.767 ± 0.0810.760 ± 0.0740.862 ± 0.052
User Study2.0 ± 1.102.11 ± 1.121.98 ± 1.142.81 ± 1.182.03 ± 1.123.32 ± 1.13

表 1a. 平均、最小/最大 DINO 图像-图像相似度,以及合并提示与单个 LoRA 模型之间的 CLIP-I 和 CLIP-T 指标,用户研究。所有指标都是越高越好。

  • DINO 相似度: CLoRA 在所有 DINO 相似度指标(Min. ONIO, Avg., Max.)上均优于所有基线方法,表明其在忠实合并 LoRA 内容方面表现卓越。特别是在 Min. ONIO (最小 DINO 相似度) 上,CLoRA 达到了 0.447 ± 0.035,显著高于其他方法,说明它能更好地处理所有概念,避免了某些概念被严重忽略的情况。
  • CLIP-T 相似度: CLoRA 在 CLIP-T (图像到文本相似度) 方面也表现最佳,达到 0.862 ± 0.052,这表明生成的图像与文本提示的语义对齐程度更高。
  • 用户研究: 在用户研究中,CLoRA 获得了最高的平均评分 3.32 ± 1.13,显著高于所有基线,这证实了其在忠实表示概念方面的主观感知优势。

运行时分析 (表 1b):

MethodCivitAIVRAMRuntime
Custom Diffusion×28GB + 8GB4.2 min + 3.5s
LoRA Merge7GB3.2s
Composite7GB3.4s
Switch7GB4.8s
Mix-of-Show×10GB + 10GB10min + 3.3s
ZipLoRA39GB + 17GB8min + 4.2s
OMG30GB62s
LoRA-Composer×51GB35s
Ours25GB24s

表 1b. 方法在 CivitAI 兼容性、VRAM 使用和运行时(微调和/或推理)方面的比较。

  • CivitAI 兼容性: CLoRA 与 CivitAI 兼容,这意味着它可以直接使用社区 LoRA 模型,而 Custom DiffusionMix-of-ShowLoRA-Composer 则不兼容。
  • VRAM 使用和运行时: CLoRA 在 VRAM 使用 (25GB) 和推理时间 (24s) 之间取得了良好的平衡。虽然有些方法(如 LoRA MergeCompositeSwitch)的 VRAM 使用更低且运行时更快,但其性能不如 CLoRA。而一些更高性能或需要训练的方法(如 Custom DiffusionZipLoRAOMGLoRA-Composer)通常需要更高的 VRAM 或更长的运行时。CLoRA 的效率使其适用于多概念图像生成。

多 LoRA 可扩展性分析 (表 2):

Mix-of-ShowOrthogonal AdaptationOurs
DINOMax.0.688 ± 0.0420.668 ± 0.0750.668 ± 0.065
Avg.0.490 ± 0.0310.524 ± 0.0420.525 ± 0.039
Min.0.371 ± 0.0320.395 ± 0.0330.396 ± 0.034
CLIP-IMax.0.574 ± 0.0780.548 ± 0.0930.543 ± 0.080
Avg.0.351 ± 0.0390.343 ± 0.0660.347 ± 0.054
Min.0.155 ± 0.0460.158 ± 0.0580.161 ± 0.058

表 2. Mix-of-Show (MoS)、Orthogonal Adaptation (Orth) 和我们的方法在 3、4、5 主体生成中的 CLIP-I 和 DINO 相似度指标定量比较。

该表比较了 CLoRA 与 Mix-of-ShowOrthogonal Adaptation 在 3-5 个 LoRA 模型组合时的性能。即使没有关键点等强先验条件(这些基线方法通常需要),CLoRA 的表现与基线方法相当,甚至略优于某些指标(如 DINO 平均相似度)。这表明 CLoRA 的对比式测试时策略在主题数量和场景复杂性增加时仍能保持高保真度。

实例分割评估 (表 3):

MergeCompositeZipLoRAMix-of-ShowOurs
CIPDMin.76.0% ± 8.7%|76.2% ± 7.2%| 73.4% ± 8.1%75.2% ± 9.5%83.3% ± 5.5%
Avg.79.5% ± 8.3%79.7% ± 6.8%77.1% ± 7.6%78.7% ± 9.2%87.1% ± 4.9%
Max.82.5% ± 8.1%82.5% ± 6.7%80.6% ± 7.6%81.7% ± 9.2%89.8% ± 4.8%
Min.
ONIA37.0% ± 15% 43.7% ± 17%30.3% ± 13% 38.5% ± 13%36.9% ± 13% 49.6% ± 15%37.5% ± 17%47.2% ± 14%
Avg.48.0% ± 22%57.3% ± 14%
Max.50.5% ± 17%49.5% ± 14%53.3% ± 16%55.6% ± 23%69.1% ± 14%

表 3. 实例级 DINO 相似度 (ONIA) 和 CLIP 相似度 (CIPD) 的最小、平均和最大相似度分数。

通过使用实例分割方法(SEEM)进行更细粒度的评估,CLoRA 在 CLIP-IDINO 相似度指标上显著优于其他方法。例如,在 CIPD (CLIP Image-Prompt Distance) 的平均值上,CLoRA 达到了 87.1% ± 4.9%,远高于其他基线。这进一步证明了 CLoRA 在精确识别和生成图像中每个独立对象实例方面的有效性。

6.1.3. 消融实验 (Ablation Study)

图 6 展示了消融实验结果,验证了 CLoRA 两个关键组件——潜在表示更新 (Latent Update)潜在表示掩码 (Latent Masking) 的有效性。

Figure 6. Ablation Study. Using the `L _ { 1 }` cat and `L _ { 2 }` dog LoRAs, the effects of two key components (latent update and latent masking) can be observed.
该图像是图6的消融实验示意图,通过使用 L1L_1 猫和 L2L_2 狗的 LoRA 模型,展示了潜变量更新和潜变量掩码两个关键组件对生成结果的影响。

图 6. 消融实验。使用 L1L_1 猫和 L2L_2 狗的 LoRA 模型,可以观察到两个关键组件(潜在表示更新和潜在表示掩码)的效果。

  • 潜在表示更新 (Latent Update): 该组件利用对比目标精确引导模型的注意力指向每个 LoRA 指定的概念,防止注意力误导和不相关区域的注意力。
    • 缺少此组件: 模型可能会错误地生成重复对象或不正确的属性连接(例如,生成两只狗而不是一只猫和一只狗),如图 6 所示。这突出了对比目标在解决注意力重叠和属性绑定问题上的关键作用。
  • 潜在表示掩码 (Latent Masking): 该组件在生成过程中保护主要主题的身份。
    • 缺少此组件: 每个像素都会受到所有提示的影响,导致最终图像出现不一致和身份丢失。掩码机制确保每个 LoRA 的影响仅限于相关区域,从而增强了概念的分离性和图像的连贯性。

      这两个组件共同增强了组合过程,使用户能够在多个 LoRA 的引导下,将特定的风格或变体引入指定区域。

6.1.4. 运行时分析 (Runtime Analysis)

图 7 展示了 VRAM 使用和推理时间随 LoRA 数量增加的变化趋势。

Figure 7. Analysis on Runtime. Number of LoRAs vs. VRAM usage, and inference time.
该图像是论文中展示运行时分析的图表,包含两个折线图,左侧展示了LoRA数量与显存(GB)关系,右侧展示了LoRA数量与推理时间(秒)关系,均呈现上升趋势,表明随着LoRA数量增加,显存占用和推理时间均显著增加。

图 7. 运行时分析。LoRA 数量与 VRAM 使用和推理时间的关系。

  • VRAM 使用: 随着 LoRA 数量的增加,VRAM 使用量呈上升趋势。例如,对于 2 个 LoRA,需要 25GB VRAM;对于 8 个 LoRA,则需要 80GB VRAM。

  • 推理时间: 推理时间也随着 LoRA 数量的增加而显著增长。例如,对于 2 个 LoRA,需要 24 秒;对于 8 个 LoRA,则需要 96 秒。

    虽然增加 LoRA 的数量提供了更大的灵活性,但计算需求也随之增加,且这种增长是可预测的,这表明 CLoRA 的方法对于多概念应用是实用的。该方法在处理 3-5 个 LoRA 的组合时,性能与需要额外姿态或分割条件的方法相当。

6.2. 数据呈现 (表格)

表 1a (已在 6.1.2 节中转录)

表 1b (已在 6.1.2 节中转录)

表 2 (已在 6.1.2 节中转录)

表 3 (已在 6.1.2 节中转录)

6.3. 消融实验/参数分析

消融实验在 6.1.3 节中已详细分析,验证了潜在表示更新和潜在表示掩码两个关键组件的有效性。

参数分析 文中提到优化迭代在 i{0,10,20}i \in \{0, 10, 20\} 中应用,并在 i=25i=25 后停止,以防止伪影。对比学习中的温度参数 τ\tau 设置为 0.5。学习率 αt\alpha_t 的具体设置在文中未明确给出,但提及它是迭代更新潜在表示的一部分。

7. 总结与思考

7.1. 结论总结

本文介绍了 CLoRA,一种无需训练的创新方法,用于在图像生成中无缝集成多个 LoRA 模型。该方法通过在测试时动态调整注意力图,并利用这些图创建语义掩码以融合潜在表示,从而有效解决了现有方法中常见的注意力重叠、属性绑定和概念忽略等问题。

实验结果表明,CLoRA 在定性和定量评估中(包括 DINO 相似度、CLIP 对齐和用户研究)均显著优于现有基线方法,在多概念图像生成中展现出卓越的性能和忠实度。CLoRA 的一个重要优势是它不需要训练特定的 LoRA 变体,并且与 Civit.ai 等平台上广泛存在的社区 LoRA 兼容。此外,CLoRA 在内存使用和运行时效率方面表现出良好的平衡,能够有效地扩展以处理多个 LoRA 模型。

通过 CLoRA,用户可以更灵活、更精确地组合不同的概念和风格,生成高质量、高保真度的多概念图像,极大地提升了个性化图像生成的能力。

7.2. 局限性与未来工作

7.2.1. 作者指出的局限性

  • 伦理考量与滥用风险: 论文明确指出,虽然 CLoRA 民主化了艺术创作并提供了巨大的机遇,但其轻松生成个性化图像的能力也带来了滥用的风险,例如创建 deepfakes (深度伪造),可能用于伪造身份或操纵公众舆论。这需要对技术伦理使用进行全面而周到的讨论。
  • 计算资源随 LoRA 数量增加: 论文虽然强调了 CLoRA 的效率和可扩展性,但在运行时分析中也显示,VRAM 使用和推理时间会随着 LoRA 数量的增加而显著上升(例如,从 2 个 LoRA 的 25GB/24s 到 8 个 LoRA 的 80GB/96s)。这意味着在处理非常多 LoRA 的极端复杂场景时,资源需求仍然是限制。

7.2.2. 未来研究方向

  • 论文明确指出,将源代码和 LoRA 集合公开,旨在促进透明度和可复现性,并鼓励在该领域的进一步发展。这暗示了对以下方向的开放性:
    • 更高效的资源利用: 进一步优化内存和计算效率,以支持更大数量 LoRA 的组合。
    • 动态学习率和温度参数: 探索更智能的潜在表示更新学习率 αt\alpha_t 和对比学习温度参数 τ\tau 的自适应或学习方法,以提高鲁棒性和性能。
    • 更复杂的语义理解: 改进对复杂、抽象概念或高度互动场景中 LoRA 模型的处理能力。
    • 用户界面和交互: 开发更直观的用户界面和交互方式,以简化 LoRA 的选择、组合和提示工程。

7.3. 个人启发与批判

7.3.1. 个人启发

  • 测试时优化的潜力: CLoRA 证明了在推理阶段对模型内部机制(如注意力图)进行精细控制的强大潜力。这种“测试时优化 (test-time optimization)”方法避免了漫长的重新训练过程,对于利用预训练模型进行灵活、即时定制具有重要意义。
  • 对比学习的巧妙应用: 将对比学习引入注意力图的优化,以解决概念分离问题是一个非常巧妙的思路。通过明确地“拉近”相关概念的注意力,并“推远”不相关概念的注意力,模型能够更好地解耦语义信息。
  • 掩码融合的精确性: 基于注意力图生成语义掩码,然后用这些掩码融合潜在表示,为 LoRA 的影响提供了精确的局部控制。这比简单的全局加权融合更加精细,也更符合人类对图像中对象区域的认知。
  • 兼容现有生态系统: CLoRA 能够直接使用社区中已有的标准 LoRA 模型,无需特殊训练或转换,这大大降低了用户的使用门槛,并加速了技术的普及和应用。
  • 问题解决的根本性: CLoRA 直接针对多 LoRA 组合的核心问题——注意力重叠和属性绑定——进行干预,而不是依赖外部辅助(如分割模型、边界框),这使得其解决方案更加内生和通用。

7.3.2. 批判与潜在改进

  • 提示工程的敏感性: CLoRA 依赖于用户提供不同变体的提示来构建概念组和对比样本。这可能意味着生成结果对提示的措辞和变体构建的质量比较敏感。未来工作可以探索更鲁棒或半自动化的提示分解和变体生成机制。
  • 计算开销的增长: 尽管论文强调了效率,但随着 LoRA 数量的增加,VRAM 和推理时间的线性增长仍然是实际应用中的一个挑战。对于需要实时生成或在资源受限设备上部署的应用,可能仍需进一步优化。例如,能否通过剪枝或量化等技术进一步压缩 LoRA 模型,或者开发更轻量级的测试时优化策略?
  • 对比目标的设计: 论文中的对比目标是 InfoNCE 损失,其正负样本的定义是基于概念分组的。这种静态分组在某些复杂场景下可能不是最优的。未来可以研究更动态的、基于语义相似度或空间位置的对比样本选择策略,甚至引入强化学习来动态调整对比目标。
  • 无条件生成的局限性: 尽管 CLoRA 实现了“无条件”生成(无需用户提供边界框等),但在某些高度精确布局的场景下,用户可能仍然需要一定程度的控制。可以考虑在保持核心优势的前提下,提供可选的、轻量级的引导机制(例如,粗略的区域偏好),以满足更多样的创作需求。
  • DINO 和 CLIP 指标的局限性: 尽管 DINO 和 CLIP 相似度是评估生成图像质量的强大自动指标,但它们并不总是完美地与人类感知对齐。用户研究提供了宝贵的补充,但其规模和多样性仍有限。
  • 风格迁移的粒度: 论文提到风格 LoRA 可以全局应用或特定于主题。探索更精细、多层次的风格控制,例如在同一主题的不同部分应用不同风格,或根据图像的深度/纹理自动调整风格强度,可能会带来更丰富的创作体验。

相似论文推荐

基于向量语义检索推荐的相关论文。

暂时没有找到相似论文。