0. 摘要
最近,文本到图像模型一直蓬勃发展。 尽管它们具有强大的生成能力,但我们的研究发现这一生成过程缺乏稳健性。 具体来说,对文本提示引入小的扰动可能会导致主题与其他类别混合,或者它们在生成的图像中完全消失。 在本文中,我们提出了
文本到图像模型的自动攻击(Auto-attack
on Text-to-image Models,ATM)
,这是一种基于梯度的方法,可以有效且高效地生成此类扰动。 通过学习 Gumbel Softmax 分布,我们可以使单词替换或扩展的离散过程连续,从而保证扰动生成的可微性。 一旦了解了分布,ATM 就可以同时采样多个攻击样本。 这些攻击样本可以阻止生成模型生成所需的主体,而不会影响图像质量。 ATM 短文本攻击成功率高达 91.1%,长文本攻击成功率高达 81.2%。 进一步的实证分析揭示了四种攻击模式,基于:1)生成速度的可变性,2)粗粒度特征的相似性,3)单词的多义性,以及 4)单词的定位。
1. 简介
近年来,文本到图像生成领域取得了显着的进步,为计算机视觉和创意艺术的突破性应用铺平了道路。 值得注意的是,许多重大进展引起了研究人员和爱好者的注意,例如稳定扩散 [20, 24]、DALL·E [18, 19, 15] 和 Midjourney [11]。 这些发展突破了文本到图像合成的界限,促进了艺术表达并推动了计算机视觉研究。
尽管文本到图像模型取得了显着进展,但重要的是要承认它们当前的局限性。 一项重大挑战在于生成的输出的不稳定和不一致。 在某些情况下,可能需要多次尝试才能获得准确表示给定文本输入的所需图像。 最近的研究 [25,1,4] 揭示的另一个障碍是生成图像的质量可能会受到文本提示固有的特定特征的影响。Tang 等人 [25] 提出了DAAM,它对条件文本到图像模型进行文本图像归因分析并生成像素级归因图。 他们的研究重点是特征纠缠现象,并发现同下义词(cohyponyms)的存在可能会降低生成图像的质量,并且描述性形容词可能在图像中出现得太广泛。 Attend-and-Excite [1] 研究了稳定扩散模型中是否存在灾难性忽视,其中生成模型未能包含输入提示中指定的一个或多个主题。 此外,他们还发现模型无法准确地将颜色等属性与其各自的主题关联起来的情况。 尽管这些工作取得了一些进展,但在增强文本到图像模型的稳定性和可靠性方面仍有工作要做,以确保各种文本提示的一致和令人满意的结果。
在这些与文本到图像模型稳定性相关的工作中观察到的一个突出限制在于它们依赖于手动制作的提示来进行漏洞识别。 这种方法提出了一些挑战。 首先,成功和失败的案例很难准确量化,评估很大程度上依赖于主观判断和定性评估。 此外,手动设计的提示只能发现有限数量的潜在故障案例,留下许多未探索的场景。 如果没有大量案例,就很难确定失败的根本原因并有效解决它们。 为了克服这些限制,人们越来越需要一种可学习的方法,该方法可以自动识别失败案例,从而实现更全面和数据驱动的方法来改进文本到图像模型。 通过利用这种方法,研究人员可以获得对当前方法的缺点的宝贵见解,并开发更强大和可靠的系统来从文本描述生成图像。
在本文中,我们提出了
文本到图像模型的自动攻击(ATM)
,以有效地生成与给定干净(clean)提示高度相似的攻击(attack)提示(图1)。 我们使用稳定扩散 [20, 24](一种广泛采用的开源模型)作为我们的目标模型。 通过开源的实现和模型参数,我们可以生成具有白盒攻击策略的攻击提示。 值得注意的是,这些攻击提示可以转移到其他生成模型,从而实现黑盒攻击。 考虑两种修改文本提示的方法,包括
替换
现有单词或用新单词
扩展
。 通过将 Gumbel Softmax 分布合并到词的嵌入中,可以将离散修改转换为连续修改,从而确保可微性。 为了确保干净提示和攻击提示之间的相似性,应用了选择性保留表示所需对象的名词的二进制掩码。 此外,还施加了两个约束:
流畅性约束
,确保攻击提示流畅易读;
相似性约束
,调节语义变化的程度。
学习到分布后,ATM 可以一次采样多个攻击提示。 该攻击提示可以在不修改所需对象的名词的情况下,阻止扩散模型生成所需对象,并保持与原始提示的高度相似性。 我们的短文本攻击成功率为 91.1%,长文本攻击成功率为 81.2%。 此外,利用 ATM 进行的大量实验和实证分析,我们能够揭示四种不同攻击模式的存在,每种攻击模式都对应于生成模型中的一个缺陷:1)生成速度的可变性; 2)粗粒度特征的相似度; 3)词语的多义性; 4)词语的定位。 接下来,我们将从第 4 节中发现的攻击模式开始分析,然后在第 5 节中详细阐述我们的攻击方法。
在本文中,我们提出了一种新颖的方法来自动有效地生成大量成功的攻击提示,该方法可以作为调查文本到图像生成流程中的缺陷的有价值的工具。 该方法能够识别更广泛的攻击模式,从而有助于全面检查根本原因。 它将激励研究界,并引起人们对探索当代文本到图像模型中存在的缺陷的更多关注,并将促进有关攻击和防御机制的进一步研究,最终增强行业内的安全性。
2. 相关工作
2.1 扩散模型
最近,扩散概率模型 [22] 及其变体 [6,13,23,20,21] 在内容生成 [23,7,21] 方面取得了巨大成功,包括图像生成 [6,23]、条件图像生成 [20]、视频生成 [7, 27]、3D场景合成 [10] 等。具体来说:
-
DDPM [6] 向图像添加噪声,并学习逐步从噪声中恢复图像。
-
DDIM [23] 通过跳过推理步骤提高了扩散模型的生成速度。
-
条件潜在扩散模型 [20] 制定了由文本、图像和语义图等多种条件引导的潜在空间中的图像生成,进一步提高了推理速度并登上了扩散模型的应用。
-
稳定扩散 [20] 是一种潜在的文本到图像扩散模型,能够在给定任何文本输入的情况下生成逼真的图像,其增强版本 [28,8,12] 已广泛应用于当前人工智能生成的内容产品中 ,如 Stability-AI [24]、Midjourney [11]、DALL·E2 [15] 和 Runaway [3]。
-
然而,这些方法和产品并不总能根据给定的提示产生令人满意的结果。 因此,在这项工作中,我们的目标是分析稳定扩散在生成过程中的鲁棒性。
2.2 文本到图像模型的缺陷
随着Stable Diffusion [20] 的开源,文本到图像的生成实现了伟大的过程,并显示出在文本提示的指导下生成多样化和创造性图像的无与伦比的能力。 然而,现有工作中发现了一些缺陷 [4,1,25]。 通常,StructureDiffusion [4] 发现提示中的某些属性在生成的图像中没有正确分配,因此它们采用一致性树或场景图来增强提示的嵌入学习。 此外,Attend-and-Excite [1] 还介绍了稳定扩散模型无法根据输入提示生成一个或多个主题,也无法正确地将属性绑定到其对应的主题。 这些证据证明了当前稳定扩散模型的缺陷。 然而,据我们所知,还没有任何工作系统地分析稳定扩散模型的缺陷,而这正是本工作的目标。
3. 基础
稳定扩散 [20] 的架构由编码器 E : X → Z 和解码器 D : Z → X 组成,其中 ~x = D(E(x))。 此外,还采用了条件去噪网络 ϵθ 和条件编码器 τθ。 在文本到图像任务中,条件编码器是将文本提示映射到潜在空间的文本编码器。 文本提示通常是单词标记序列 c = {c1, . 。 。 , cK},其中 K 是序列长度。 在图像生成过程中,从诸如高斯分布之类的分布中提取随机潜在表示 zT。 然后,使用反向扩散过程逐渐恢复无噪声的潜在表示 z。 具体来说,训练条件去噪网络
以在每个时间步 t = T,... ,1 逐渐对 zt 进行去噪,从而逐渐降低 zt 的噪声水平,其中使用 τθ(c) 映射将条件 c 映射到潜在空间,并将条件和特征之间的交叉注意力纳入 ϵθ 中以引入条件。 最后,去噪的潜在表示 z 由解码器 D 解码以产生最终输出 〜x。 我们研究的目的是对文本提示引入轻微的扰动,从而导致预期对象与其他对象混合或从生成的图像中完全省略。 为了简化起见,在接下来的部分中,我们将使用 GM 来表示图像生成过程为 ~x = GM(zT |c)。
4. 稳定扩散模型的缺陷
通过应用本文提出的攻击方法,可以生成并分析多种攻击文本提示。 在本节中,将讨论已识别的攻击模式。 攻击方法的细节在第 5 节中介绍。我们发现稳定扩散模型有四种不同的损害模式:
-
生成速度的可变性,其中模型努力有效地协调不同类别之间生成速度的差异。
-
粗粒度特征的相似性,由全局或部分粗粒度特征的特征纠缠产生,具有较高的纠缠度。
-
单词的多义性,即在原始提示中添加语义互补的单词,从而导致创建包含全新内容且与原始类别无关的图像。
-
单词的定位,其中类别单词在提示中的位置影响生成图像的最终结果。
4.1 生成速度的变化
观察 1
。当给定的文本提示包含代表要生成的对象的名词 A 时,通过添加或替换在提示中引入另一个名词 B 会导致名词 A 从生成的图像中消失,取而代之的是名词 B。
在观察 1 中,我们发现了一个现象,当在文本提示的描述中替换或添加名词时,新名词会导致所需主语完全消失。 如图 2 所示,如果将名词 “峰” 替换为 “孔雀”,则所需的对象 “山” 消失,并生成新的对象 “孔雀”。 为了进一步研究这一现象,我们使用两个分别包含 “山” 和 “孔雀” 的短提示 c1 和c2,以排除长提示中其他单词的影响。 为了消除所有可能的无关因素(例如上下文关系)的额外影响,它们被单独嵌入,然后连接在一起:Concat(τθ(c1), τθ(c2))。 结果表明,在生成的图像中几乎看不到山的任何元素(图 2)。
进一步的分析揭示了两个对象的生成速度存在显着差异。 为了定义生成速度,需要一个度量来测量在给定时间步长 t = T − 1,...,0 处的生成图像 〜xt 与输出图像 〜x0 的距离(注意,〜xT 是初始噪声)。 我们使用结构相似性(SSIM)[26] 作为距离度量
因此,生成速度可以正式定义为 SSIM 关于时间步长的导数:
因此,我们提出模式 1。
模式 1
(生成速度的变化)。 比较两个对象(S1 和 S2)的生成速度(v1 和 v2),可以观察到,如果 v1 > v2,则生成图像中的物体轮廓将显示为 S1。 可以推断,S2 在结果图像中不可见。
我们进一步生成具有相同初始噪声的各种类别的 1, 000 个图像,并将它们的生成速度可视化在图 4 中作为小提琴图。 计算每一步生成的图像到最终图像的 SSIM 距离。 横轴代表 49 ∼ 0 步,纵轴代表 SSIM 分数。 每个小提琴代表一步中 1, 000 张图像的 SSIM 分数的分布,宽度对应于图像达到分数的频率。 在生成的早期阶段,分布的中值位置更接近最小值,表明大多数类表现出较慢的生成速度。 然而,较高最大值的存在表明存在生成相对较快的类。 在生成的中期阶段,分布的中位数逐渐增加,位于最大值和最小值之间。 在生成的后期阶段,分布的中值更接近最大值,表明大多数类别已接近完成。 然而,较低的最小值的持续存在表明存在仍然表现出较慢生成速度的类。 该分析强调了在整个生成过程中不同类别的生成速度的变化。 这种现象可以解释为生成过程的一个特征,其中不同的类别在整个阶段表现出不同的速度。 某些类可能具有固有的复杂性或依赖性,导致它们生成速度更慢。 相反,其他类可能具有更简单的结构或更少的依赖性,从而导致更快的生成。
4.2 粗粒度特征的相似性
观察 2
。当文本提示包含表示要生成对象的名词 A 时,通过添加或替换将另一个名词 B 引入到提示中,该名词 B 描述了与名词 A 表示的对象具有相似粗粒度特征的对象 ,会生成一个图像,其中包含结合了名词 A 和 B 元素的对象。
我们在攻击中观察到的第二种情况是,当文本提示中的两个名词具有相似的粗粒度特征时,生成的图像将包含由这两个名词组合而成的对象。 如图 6 所示,当给出文本“银鲑鱼(silver salmon)和羽毛(feather)”时,GM 会生成带有鲑鱼轮廓的羽毛图像。 发生这种情况是因为这两个名词(即鲑鱼和羽毛)在粗粒度属性上表现出一定程度的相似性。 相比之下,“鲑鱼”和“魔术师(magician)”之间不存在特征纠缠,因为它们的粗粒度特征彼此存在巨大差异。
为了验证这个假设,我们首先在早期采样步骤(例如 42 个步骤)获取提示“银鲑鱼的照片”的生成的潜在变量。 使用这个潜在变量,我们用“羽毛照片”替换提示并继续生成图像。 结果证实,可以根据银鲑鱼的粗粒度特性继续生成羽毛,并且最终生成的图与提示“银鲑鱼和羽毛的照片”的生成图具有较高的相似度。 然而,用“魔术师”替换“银鲑鱼”似乎并没有生成任何类似于“魔术师”的对象。 这一观察表明这两个主题之间不存在粗粒度的特征纠缠。 我们在模式 2 中总结了这一观察结果。
模式 2
(粗粒度特征的相似性)。 令
分别表示 GM 为单词 token A 和 B 生成的潜在变量。 假设 t 很小,让 d 代表衡量两幅图像之间轮廓相似度的度量。 如果文本提示同时包含 A 和 B,并且
低于阈值 σ,则生成的图像中发生特征纠缠。
根据观察到的模式2,特征纠缠的类型可以进一步分为
直接纠缠
和
间接纠缠
。
-
直接纠缠如图 5 所示,表示由具有全局或局部相似性的两类粗粒度属性触发的直接纠缠。
-
间接纠缠如图 5d 所示,其中吼猴带来的附加属性主干与蛇的粗粒度属性相似度较高,从而引发纠缠现象。
4.3 单词多义性(Polysemy)
观察3
。当文本提示包含表示要生成的对象的名词 A 时,如果名词 A 的语义范围包含多个不同的对象,则生成的图像包含名词 A 描述的对象之一。如果存在另一个单词 B 当与名词 A 结合时,将其语义指向特定对象,通过添加或替换将单词 B 引入提示中,导致生成包含该特定对象的图像。
我们在攻击中观察到的第三种情况是,生成的图像的内容与所需图像或添加的单词不直接相关。 然而,这又与消失类别不同,消失类别中所需目标在图像中具有清晰的个体。 如图所示 7a、7b 和 7c 所示,当清洁提示“蝙蝠的照片”修改为“蝙蝠和球的照片”时,蝙蝠从生成的图像中完全消失,但DDAM [25] 热图显示: “蝙蝠”一词与新生成的图像中的棒状物体高度相关。
模式 3
(单词一词多义)。 在解释多义词时,语言模型必须依靠上下文线索来区分含义。 然而,在某些情况下,可用的上下文信息可能不足或通过修改特定单词来混淆模型,导致模型生成的图像偏离用户的实际意图。
为了进一步研究稳定扩散模型中的单词多义现象,我们使用稳定扩散模型,使用提示 “a photo of a bat”、“a photo of a baseball bat” 和 “a photo of a bat and a ball” 分别生成100张图像,并通过CLIP图像编码器将这些图像转换为嵌入形式,并通过 CLIP 文本编码器将 “蝙蝠(bat)的照片” 转换为嵌入形式,然后通过 t-SNE 将这 301 个嵌入可视化。 如图 8a 所示,考虑到整组蝙蝠图像,蝙蝠(bat)比棒球棒(baseball bat)更接近文本 “蝙蝠的照片”,如 t-SNE 可视化中所示。 然而,这两个类别的分布也相对接近,表明它们具有潜在的相似性。 “球棒和球” 类别的分布更为广泛,几乎涵盖了其他两个类别。 这表明,通过将原始文本从 “a photo of a bat” 修改为 “a photo of a bat and a ball”,可以将干净文本的分布拉向单词 “bat” 的多义性质中的另一种含义 。 从文本到图像模型的角度来看,这种修改可以激发单词的多义性,从而达到攻击效果。
除了这种明显的多义词之外,我们的算法还进一步证明了其检测多义词的微妙实例的能力。 如图 7 所示,当疣猪(warthog)图像(图 7d)转变为军用战车(military chariot)图像(图 7e)并加入“叛徒(traitor)”一词时,我们算法的转换能力就很明显。
4.4 单词的位置
观察 4
。当文本提示包含表示要生成的对象的名词 A 时,名词 A 周围存在前面的单词 B 和后面的单词 C。当用另一个名词 D 替换单词 B 或 C 时,
-
对于名词的某些实例 A,替换单词 B 会导致生成包含名词 D 的图像,而替换单词 C 仍然会导致生成包含名词 A 的图像。
-
对于名词 A 的其他实例,会出现相反的情况。
模式 4 的示例如图 9 所示。当 “鞋类(footwear)” 替换为 “手枪(pistol)” 时,生成的图像包含手枪而不是木屐(clogs)。 然而,当 “荷兰(Ductch)” 被 “手枪” 取代时,模型仍然生成木屐的图像。 除了被替换的单词的差异之外,上述两个成功和失败的例子之间的显着区别还在于被替换的单词相对于目标类单词的相对位置。 我们假设这种现象的发生是由于替换词 B 或 C 相对于名词 A 的顺序不同。为了排除复杂上下文结构的影响,使用一个简短提示的模板 “A、B 和 C 的照片”,并且 A、B 和 C 的顺序交换(图10)。
当这些类别词顺序不同的句子从人类的角度理解时,它们的语义基本相同:都描述了一张包含猫、木屐和手枪的图片。 然而,在语言模型(包括CLIP)的处理中,单词的顺序可能会影响它们的理解。 尽管位置编码为模型提供了单词的相对位置,但模型可以通过学习模式将不同的顺序与不同的语义相关联。 因此,我们提出模式 4。
模式 4
(单词的位置)。 令 V 表示一组词汇。 令 N ⊂ V 表示词汇表中所有名词的子集。 考虑一个文本提示,其中包含表示要生成的对象名词 A ∈ N。 此外,假设名词 A 周围存在前面的单词 B ∈ V 和后面的单词 C ∈ V。存在关于将单词 B 和 C 替换为另一个名词 D ∈ N 的条件依赖行为:
5. 文本转图像模型的自动攻击
我们的目标是设计一种针对最近流行的文本到图像模型的自动攻击方法。 我们方法的目标是基于干净的提示 c 来识别攻击提示 c′,这会导致视觉模型 h : X → Y 无法预测所需的类 y,即
其中 GM(·) 是文本到图像模型,
d(·,·) 是对 c 和 c' 之间的相似性进行正则化的距离测度,并且 ζ 是最大距离。 为了实现自动攻击,需要一种可以使用梯度下降进行优化的可微分方法。 我们引入了 Gumbel-Softmax 采样器,以在词嵌入阶段对文本提示进行可微分修改。 为了最小化距离 d(c, c′),我们引入两个约束,包括流畅性约束和相似性约束。
在我们的实验设置中,采用开源稳定扩散模型作为目标生成模型 GM(·)。 通过为稳定扩散生成白盒攻击提示,我们随后可以将这些提示转移到其他生成模型来执行黑盒攻击。 为了促进分类任务,我们利用 CLIP 分类器作为视觉模型 h(·),受益于其卓越的零样本分类精度。 为了建立所需的类,我们使用了从 ImageNet-1K 派生的 1,000 个类。 在生成简短提示的情况下,使用固定模板 “A photo of [CLASS_NAME]” 来生成提示。 相反,为了生成长提示,我们采用 ChatGPT 4 [16] 作为提示生成模型。 随后,人类专家验证提示的正确性,并检查提示是否确实包含与所需类别相关的名词。
5.1 可微分文本提示修改
文本提示通常是单词序列 c = {c1,...,CK}。 由于文本提示 c 的离散性质,可以通过替换现有单词 ck (其中 1 ≤ k ≤ K)或用新单词 {cK+i|1 ≤ i ≤ K′} 进行扩充来合并扰动。 然而,该过程的不可微性质使其不适合利用基于梯度的技术进行优化。 因此,需要一种机制来保证选词过程的可微分性。 在这方面,我们将 Gumbel Softmax 采样器 ψ(·; τ ) 集成到词嵌入阶段。 Gumbel Softmax 函数能够在温度 τ → 0 时近似 one-hot 分布。此外,Gumbel 分布能够引入进一步的随机性,从而增强扰动搜索初始阶段的可利用性。
可微采样
。我们使用可训练矩阵 ω ∈ R^(K×V) 来学习单词选择分布,其中 K 是文本提示的长度,V 是词汇量。 在增加新词的场景下,可以将序列长度 K 扩展为 K+K′,以方便新词的添加。 Gumbel Softmax 可以表示如下:
其中 gk,i ∼ Gumbel(0, 1) 是来自 Gumbel 分布的 i.i.d. 样本。 词嵌入阶段用矩阵 E ∈ R^(V×D),其中 V 是词汇量,D 是嵌入维数。 词嵌入的离散过程是根据词汇表中单词的索引 1≤i≤V 从 E 中选择 Ei。 为了使这个过程可微,可以计算 GumbelSoftmax(ωk) 和 E 之间的点积:
其中 c′k 是根据 ωk 选择的新词。 当 τ → 0 时,等式 3 可以有效地模拟argmax选择过程。
另外,为了确保相似性,希望在新提示中保留表示所需对象的名词。 这是通过利用二元掩码 M ∈ {0, 1}^K 来实现的,其中与所需名词对应的位置设置为 0,而其他位置设置为 1。通过计算
提示中可保留所需名词,其他单词可修改。
攻击目标。
为了生成无法被分类器正确分类的图像 〜x,可以使用余量(margin)损失作为等式 1 中的损失函数 ℓ(·,·):
其中 κ 是余量。 等式 4 降低了分类器对真实类别 y 的置信度,并提高其对具有最大置信度的类别的置信度,排除 y 直至达到余量 κ。
5.2 流畅性和相似性的限制
考虑到我们在 R^(K×V) 空间中搜索扰动来攻击文本提示,如果添加的扰动没有得到适当的约束,那么攻击提示可能会过于多样化,从而很容易被检测到。 等式 1 包括一个距离约束,使得
这确保添加的扰动是微小的且难以注意到。 可以通过多种方法来测量两段文本之间的距离。 我们引入两个约束来减少这个距离,即流畅性约束和语义相似性约束。
流畅性约束
确保生成的句子流畅且可读,而
语义相似性约束
则规范扰动引入的语义变化,使得攻击提示 c' 与干净提示 c 非常相似。
流畅度约束
。 流畅性约束可以通过具有对数概率输出的 Casual Language Model (CLM) Φ 来实现。 我们学习的下一个标记分布与 Φ 预测的下一个标记分布进行比较。 给定一个扰动文本 c′ 序列,我们使用 Φ 基于 {c′1, ... ,c′_(i−1)} 来预测 token c′i。 因此,我们可以得到下一个可能单词的对数似然:
我们学习的下一个标记分布可以通过 GumbelSoftmax(ωi ; τ) 轻松获得。 随后,可以采用交叉熵损失函数来优化学习的分布:
等式 6 作为正则化器,鼓励下一个单词选择分布类似于 CLM 的预测,从而确保流畅性。
语义相似性约束
。 我们不是简单地考虑单词相似度,而是更关注语义相似度。 用于评估语义相似性的一项重要指标是 BERTScore [30]。 BERTScore 的计算需要上下文化的词嵌入。 再次使用前面提到的 CLM Φ 来提取嵌入
其中 Φ^(emb) 表示 Φ 中使用的嵌入网络。 干净提示 c 和攻击提示 c′ 之间的 BERTScore 可以通过以下方式计算
是归一化逆文档频率 (inverse document frequency,idf),N = K,M 是 K 或 K +K′,具体取决于是否替换现有单词或添加新单词。 为了提高相似性,我们使用 1 − S_BERT (c, c′) 作为损失项。
考虑到约束的添加可能会限制扰动搜索的多样性,我们引入两个超参数 λ 和 γ 来控制约束的强度。 那么,总体目标函数可以写为:
5.3 攻击提示的生成
ATM 的整体过程如算法 1 中所述。它由两个阶段组成:搜索阶段,学习 Gumbel Softmax 分布;攻击阶段,我们使用学习的分布生成攻击提示。
-
在搜索阶段,我们使用梯度下降来优化 T 次迭代期间每个干净提示 c 的参数 ω。 一旦学习了 ω,我们就进入攻击阶段。
-
在攻击阶段,我们从每个学习的 ω 中采样 N 个攻击提示。 如果由视觉分类器 h 无法正确分类由攻击提示 c' 生成的图像 ~x',则认为攻击提示 c' 是成功的。
6. 实验
在我们的实验中,我们对长提示和短提示进行了全面分析。 此外,我们专门针对长提示进行消融研究,重点关注三个关键方面。
-
首先,我们使用不同数量的搜索步骤 T 评估我们的攻击方法。
-
其次,我们研究约束的影响,包括由 BERTScore 测量的流畅性和语义相似性。
-
最后,我们攻击不同的采样器,包括 DDIM [23] 和 DPM-Solver [9]。 此外,我们验证了生成的攻击提示能够通过黑盒攻击影响 DALL·E2 和 mid-journey。
6.1 实验设置
攻击超参数
。
-
搜索迭代次数 T 设置为 100。该值决定了搜索阶段的迭代次数,在此期间我们的目标是找到最有效的攻击提示。
-
攻击候选数量 N 设置为 100。该参数指定在攻击阶段考虑的候选攻击提示的数量,允许探索多种潜在攻击提示。
-
矩阵 ω 的学习率 η 设置为 0.3。
-
余量损失中的余量 κ 设置为 30。
文字提示
。 我们的实验考虑了 ImageNet-1K [2] 中的 1, 000 个类,它作为生成图像的基础。 为了探讨提示长度的影响,我们考虑短提示和长提示。 为了干净简短的提示,我们采用标准化模板:“A photo of [CLASS_NAME]”。 另一方面,干净的长提示是使用 ChatGPT 4 [16] 生成的,提示长度限制为 77 个 tokens,以与 CLIP [17] 词嵌入器的上限保持一致。
评估指标
。 为了评估我们的攻击方法的有效性,我们从干净的提示中生成攻击提示。 我们关注三个关键指标:成功率、Fréchet inception distance [5] (FID)、Inception Score (IS) 和 text similarity (TS)。 随后,使用攻击提示生成 50, 000 张图像,确保每类有 50 张图像的代表性样本。 成功率由成功攻击的数量除以 1,000 个类别的总数来确定。 FID 和 IS 是通过将生成的图像与具有 (torch-fidelity) [14] 的 ImageNet-1K 验证集进行比较来计算的。 TS 是通过分别使用 CLIP [17] 词嵌入器嵌入攻击提示和干净提示来计算的。 随后,计算嵌入之间的余弦相似度以量化文本相似度。
6.2 主要结果
表 1 报告了我们的主要结果,包括短提示和长提示攻击。 与长文本提示相比,短文本提示仅包含少量标记。 这导致结构相对脆弱,极易受到轻微干扰。 因此,针对短提示的随机攻击可以达到令人印象深刻的 79.2% 的成功率,但针对长提示的成功率较低,为 41.4%。 相比之下,我们的算法展示了其真正的潜力,针对短提示和长提示分别达到了 91.1% 和 81.2% 的令人印象深刻的成功率。
作为我们算法有效性的进一步证据,值得注意的是随机攻击和我们算法输出之间的文本相似性 (TS) 指标。 对于短提示攻击,该值分别为 0.69 和 0.72,这说明短文本的语义信息虽然容易被破坏,但可以通过设计良好的、具有流畅性和语义相似性约束的算法来操纵。 我们的攻击与干净的提示保持了更多的相似性。 对于长提示攻击,随机攻击的 TS 分数 (0.94) 比我们的攻击 (0.84) 更高。 一个可能的原因是,随着提示长度的增加,随机攻击往往只进行最小的修改。 这种有限的修改可以解释较长提示下的随机攻击成功率显着降低的原因。
从图像生成质量和多样性的角度来看,我们发现随着攻击成功率的增加,图像生成质量和多样性会下降。 对于短文本和长文本,从纯文本生成的图像具有最低的 FID(18.51 和 17.95)和最高的 IS(101.33±1.80 和 103.59±1.68)。 随着攻击成功率的上升,FID呈现上升趋势。 从 FID 的角度审视这种情况,FID 是一种衡量生成图像分布与原始数据集之间距离的指标。 随着攻击变得更加成功,攻击提示生成的图像集往往会大幅偏离原始数据集的分布。 因此,这种差异会提高 FID 分数,表明原始分布和生成的分布之间的距离更大。 另一方面,从多样性的角度考虑这种情况,成功的攻击所带来的对原始类别生成的抑制可能会导致多样性的减少。 多样性的减少反过来可能会导致初始分数(IS)的下降。
6.3 不同的搜索步骤
表 2 给出了在搜索阶段使用不同步数 T 的结果。
-
对于 T = 50 步配置,成功率为 68.7%。 FID 值为 34.00,值越低表明图像质量越好。 IS 报告为 93.94±1.84,较高的值表明图像多样化且高质量。 TS 值为 0.97,代表文本相似度较高。
-
对于 T = 100 步配置,成功率增加到 81.2%,与之前的配置相比有所提高。 FID值下降至29.65,表明图像质量更好。 IS 报告为 66.09±1.83,与之前的配置相比略有下降。 TS 值为0.84,表明文本相似度略有下降。
-
在 T = 150 步配置中,成功率下降至 67.2%,略低于初始配置。 FID 值增加至 45.23,表明图像质量下降。 IS 报告为 58.51±0.79,表明生成图像的多样性和质量下降。 TS值保持相对稳定在0.82。
当使用 T = 50 时,攻击提示无法很好地拟合,并且与干净提示表现出更高的文本相似度。 尽管此阶段生成的图像仍然保持良好的质量并且与干净提示生成的图像非常相似,但攻击的成功率非常低。 另一方面,当T=150时,就会发生过拟合,由于过拟合的攻击提示,导致文本相似度和图像质量下降。 因此,攻击的成功率也会降低。 总体而言,T = 100 的配置被证明是合适的。
6.4 约束的影响
表 3 检查了流畅性和语义相似性 (BERTScore) 约束的影响。
-
在不施加任何约束的情况下,攻击成功率非常高,达到 91.3%。 然而,缺乏约束会导致文本相似性 (TS) 得分较低,为 0.37,这表明与干净文本的相似性降低,图像质量下降。
-
仅引入流畅性约束,攻击成功率下降至 81.7%,但文本相似度提高至 0.79。
-
仅引入语义相似度约束也会导致成功率略有下降至 89.8%,但仅将文本相似度略微提高至 0.51。
-
约束的引入,特别是流畅性约束,会导致文本相似度的增加。 流畅性约束考虑了每个标记的前面标记,从而能够整合上下文信息,从而更好地增强文本相似性。 另一方面,BERTScore 考虑加权和,更多地关注各个标记之间的相似性,而不保留上下文之间的相互关系。 换句话说,词序可能会因此发生变化,导致文本相似度较低。 当然,这个结果是预料之中的,因为 BERTScore 本身优先考虑两个提示之间的语义一致性,而上下文的顺序不一定会影响语义。 这进一步凸显了同时采用这两种约束的重要性。
-
当两个约束一起使用时,文本相似度进一步提高到 0.84。 同时,攻击的成功率(81.2%)与仅采用流畅性约束时的攻击成功率相当,而文本相似度超过了单独使用两个约束时获得的结果。
6.5 不同的采样器
表 4 说明了我们的攻击方法成功针对 DDIM 和更强的 DPM-Solver 的有效性。 对于DDIM采样器,我们的攻击方法达到了 81.2% 的成功率,表明其能够生成成功的攻击提示。 同样,我们的攻击方法在应用于 DPM-Solver 采样器时展示了有希望的结果。 成功率 76.5%,有效生成攻击提示。 TS 分数分别为 0.84 和 0.88,表明攻击提示和干净提示之间的文本相似度处于合理水平。 这些结果证明了我们的攻击方法的可迁移性,展示了其针对 DDIM 和更强大的 DPM-Solver 采样器的有效性。
6.6 黑盒攻击
为了进一步研究我们生成的攻击提示是否可以转移到不同的文本到图像模型,我们随机选择攻击提示分别攻击 DALL·E2 和 mid-journey。 实验结果(图11)证明我们的攻击提示也可以用于黑盒攻击。 补充材料中报告了更多黑盒攻击的结果。
7. 结论
近年来,文本到图像生成领域发生了显着的演变,同时暴露了一些需要进一步探索的漏洞。 尽管取得了许多进步,但仍存在一些关键限制,特别是在生成模型的稳定性和可靠性方面,仍有待解决。 本文介绍了文本到图像模型(ATM)的自动攻击,这是一种生成大量成功攻击提示的新颖方法,为探测文本到图像模型中的缺陷提供了有效的工具。 ATM 不仅可以识别更广泛的攻击模式,还有助于全面检查根本原因。 我们相信,我们提出的方法将激励研究界将注意力转向当今文本到图像模型的缺陷,从而刺激对攻击和防御策略的进一步探索。 这一过程对于推进行业内的安全机制至关重要,并有助于开发更强大、更可靠的系统来从文本描述生成图像。
Du C, Li Y, Qiu Z, et al. Stable Diffusion is Unstable[J]. arXiv e-prints, 2023: arXiv: 2306.02583.
S. 总结
S.1 主要思想
文本到图像模型的生成过程缺乏稳健性。对文本提示引入小的扰动可能会导致主题与其他类别混合,或者它们在生成的图像中完全消失。本文提出一种基于梯度的
文本到图像模型的自动攻击(Auto-attack on Text-to-image Models,ATM),
可以有效且高效地生成此类扰动。
本文的主要贡献:
-
提出文本到图像模型的自动攻击(ATM),其中,使用稳定扩散作为目标模型。
-
通过将 Gumbel Softmax 分布合并到词的嵌入中,可以将提示的离散修改转换为连续修改,从而确保可微性,有利于使用基于梯度的技术进行优化。
-
为了确保干净提示和攻击提示之间的相似性,应用了选择性保留表示所需对象的名词的二进制掩码。
-
为确保添加的扰动是微小的且难以注意到,为提示文本施加了两个约束:
流畅性约束
,确保攻击提示流畅易读;
相似性约束
,规范扰动引入的语义变化,使得攻击提示与干净提示非常相似。
-
揭示四种不同攻击模式的存在,每种攻击模式都对应于生成模型中的一个缺陷:1)生成速度的可变性; 2)粗粒度特征的相似度; 3)词语的多义性; 4)词语的位置。
S.2 稳定扩散模型的缺陷
模式 1
(生成速度的变化)。 比较两个对象(S1 和 S2)的生成速度(v1 和 v2),可以观察到,如果 v1 > v2,则生成图像中的物体轮廓将显示为 S1。 可以推断,S2 在结果图像中不可见。
模式 2
(粗粒度特征的相似性)。如果文本提示同时包含单词 token A 和 B,且在生成前期, A 和 B 对应两幅图像之间轮廓相似度低于阈值,则生成的图像将包含由这两个单词组合而成的对象(纠缠)。纠缠分为直接纠缠和间接纠缠。
模式 3
(单词一词多义)。 在解释多义词时,语言模型必须依靠上下文线索来区分含义。 然而,在某些情况下,可用的上下文信息可能不足或通过修改特定单词来混淆模型,导致模型生成的图像偏离用户的实际意图。
模式 4
(单词的位置)。当文本提示包含表示要生成的对象的名词 A 时,名词 A 周围存在前面的单词 B 和后面的单词 C。当用另一个名词 D 替换单词 B 或 C 时,对于名词的某些实例 A,替换单词 B 会导致生成包含名词 D 的图像,而替换单词 C 仍然会导致生成包含名词 A 的图像。对于名词 A 的其他实例,会出现相反的情况。
"Stable-
Diff
us
ion
"通常是指一种用于处理不
稳定
扩散过程的数学模型,比如在物理学、化学或金融领域中的随机扩散问题。它基于Fokker-Planck方程或Smoluchowski方程,旨在描述粒子在空间中的分布随时间的变化。
如果遇到"Stable-
Diff
us
ion
模型加载失败"的情况,这可能是由于以下几个原因:
1. **库依赖**:你可能需要先安装相关的Python库,如TensorFlow Probability或PyTorch,才能使用特定的Stable
Diff
us
ion
模型。确保已经正确安装并导入了所需的模块。
2. **模型文件路径错误**:模型文件可能不在预期的位置,检查文件路径是否正确,或者网络连接是否
稳定
,如果没有本地副本,则可能需要从服务器下载。
3. **版本兼容性**:模型可能与当前使用的软件或API版本不兼容,查看文档确认你需要的模型支持的最低/最高版本。
4. **环境配置**:某些模型可能需要特殊的环境设置或GPU支持,确保你的运行环境满足模型的要求。
5. **错误日志信息**:检查模型加载过程中是否有任何错误消息,它们通常会提供关于问题的线索。
如果你遇到问题,可以尝试解决上述问题,如果还是无法解决,记得查阅官方文档或在线社区寻求帮助。