像 Stable Diffusion 和 Midjourney 这样的文本到图像 (Text-to-Image, T2I) 生成模型的兴起,彻底改变了数字创意领域。然而,要从这些模型中获得高质量的图像,通常需要“提示词工程 (prompt engineering) ”——即精心编写详细、具体文本描述的艺术。由于大多数用户并不是编写这些复杂提示词的专家,一类新的工具应运而生: 文本到图像提示词优化 (Text-to-Image Prompt Refinement, T2I-Refine) 服务。
这些服务接收用户简单的输入 (例如“一部智能手机”) ,并将其扩展为丰富的描述 (例如“一部智能手机,细节错综复杂,8k 分辨率,电影级布光”) 。虽然很有帮助,但这层中间环节引入了一个引人深思的安全和伦理问题: 提示词优化模型是否会被“投毒”,从而秘密地操控输出结果?
在这篇文章中,我们将深入探讨一篇名为 “RAt: Injecting Implicit Bias for Text-To-Image Prompt Refinement Models” 的研究论文。作者调查了对抗性模型是否可以通过优化提示词,迫使生成的图像偏向特定的概念 (如特定品牌、性别或文化风格) ,而用户却完全察觉不到。
问题所在: 对抗性提示词攻击
想象一下,你请求优化服务为你提供一个生成“一部智能手机”的提示词。你期望该服务能让提示词变得更好,从而生成更高质量的图像。然而,除非你另有说明,你也期望模型在手机的类型上保持中立。
研究人员提出了一种场景,攻击者向优化过程中注入了“目标概念偏见”。

如 图 1 所示,普通模型 (左) 生成了多样化的手机分布 (苹果和安卓) 。然而, 对抗性 T2I-Refine 模型 (右) 隐性地注入了偏见。优化后的提示词“new and shiny (崭新且闪亮) ”看起来人畜无害,但它实际上经过了精心优化,旨在迫使下游的图像生成器主要生成安卓手机。
这正是问题的核心: 我们如何生成既能诱导特定视觉偏见,又能保持高图像质量,且在语义上对用户显得正常的对抗性提示词?
定义目标
攻击者的目标是最大化生成图像 (\(x_{adv}\)) 与目标偏见 (\(c_k\)) 一致的概率,同时确保提示词的文本与用户的原始意图 (\(p_{usr}\)) 保持相似,并且图像质量 (\(\mathcal{Q}\)) 实际上有所提高。
在数学上,作者将此优化问题定义如下:

在这里,攻击者希望最大化偏见图像的概率 (\(\Pr(x_{adv}|c_k)\)) ,同时最小化用户提示词与对抗性提示词之间的语义距离 (\(\| p_{usr}, p_{ref} \|\)) 。
解决方案: RAt 框架
研究人员开发了 RAt (Refinement and Attacking framework,优化与攻击框架) 。RAt 旨在解决两个主要挑战:
- 对抗性多模态参与: 文本攻击通常只是改变单词。但在这里,我们需要通过改变单词来影响图像。我们需要视觉模态参与到优化过程中。
- 隐性提示词攻击: 如果模型只是简单地将“手机”替换为“安卓”,用户会立即察觉。攻击必须使用“隐性”术语——那些看起来没有偏见,但能触发图像生成器产生偏见的词汇。
系统概览
RAt 在一个包含生成器 (Generator) 、攻击器 (Attacker) 和混淆器 (Obfuscator) 的管道中运行。

让我们详细分解 图 2 中展示的三个关键模块。
1. 生成器模块: 创建目标
由于 T2I 模型的输出是图像,攻击者需要一个视觉目标来瞄准。RAt 首先创建所谓的 显性偏见图像 (Explicit Biased Images) (\(x_{exp}\))。
生成器接收优化后的提示词,并显式地将概念替换为带有偏见的术语 (例如,将“phone”替换为“Android”) 。它基于这个显式提示词生成图像。这些图像充当“基本真值 (ground truth) ”或“锚点”,代表攻击者希望最终结果看起来的样子。
2. 攻击器模块: 寻找隐性触发器
这是框架的核心。攻击器需要找到一种方法,使用不显式包含偏见词汇的提示词来生成上述的显性偏见图像。
作者使用了一种称为 对抗性文本到图像微调 (adversarial text-to-image finetuning) 的技术。他们冻结图像生成器 (Stable Diffusion) 的参数,转而优化一个 Token 分布矩阵 (\(\mathcal{A}\))。
可以将这个矩阵视为一组选择单词的加权概率。模型尝试调整这些权重,以便生成的图像与步骤 1 中创建的显性偏见图像相匹配。
该过程的损失函数试图最小化目标图像中的噪声与当前提示词预测的噪声之间的差异:

然而,我们不能让模型写出乱码。为了保持提示词有意义,RAt 包含了一个 语义一致性损失 (Semantic Consistency Loss) 。 这确保了对抗性提示词在语义上仍然与用户的原始输入相关:

3. 混淆器模块: 掩盖踪迹
即使有了上述步骤,模型可能还是会学到直接插入偏见词 (例如“Android”) ,因为这是让图像看起来像安卓手机的最简单方法。为了防止这种情况,RAt 引入了一个 混淆器 (Obfuscator) 。
混淆器计算“偏见混淆损失” (\(\mathcal{L}_{tok}\))。它利用 CLIP (一种理解文本和图像之间关系的模型) 来检查所选对抗性 Token (\(\hat{t}_n\)) 与目标偏见 (\(c_k\)) 之间的关系。

如果一个 Token 与偏见的关联太强 (例如,单词“Army”与“Male”密切相关) ,损失就会增加。这迫使模型寻找 隐性 词汇——那些微妙的描述符,它们能在引导图像生成器转向偏见的同时,对用户而言并不明显。
总优化目标
最终的训练目标结合了图像重建损失 (为了看起来像目标) 、语义损失 (为了听起来像用户的话) 和混淆损失 (为了隐藏偏见) :

实验与结果
作者使用 Stable Diffusion 1.4 在大规模数据集 (SFT) 上评估了 RAt。他们针对四个主要概念进行了测试:
- 人物 (Person) : 偏向男性/女性,成人/儿童,或西方/东方文化。
- 食物 (Food) : 偏向肉类/蔬菜。
- 电话 (Phone) : 偏向 iPhone/Android。
- 房间 (Room) : 偏向休息室/卧室。
定量成功
结果令人信服。他们将 RAt 与标准优化模型 (“Promptist”) 和原始提示词 (“Origin”) 进行了比较。他们测量了 偏见 (Bias) (图像与目标的一致程度) 和 质量 (Quality) (美学评分) 。

如 表 1 所示,RAt 在保持甚至经常提高图像质量的同时,始终获得比基线更高的偏见分数。例如,在“电话 (Android) ”任务中,RAt 的偏见分数约为 24.3,明显高于原始提示词的 21.9。
分布偏移
为了直观地展示攻击的有效性,研究人员绘制了生成图像的分布图。

在 图 3 中,x 轴代表预测为偏见类别的图像百分比。你可以看到 绿色曲线 (RAt) 始终向右偏移或在较高值处达到峰值,与蓝色 (Origin) 和橙色 (Promptist) 曲线形成对比。这表明,几乎对于每个概念,RAt 都成功地倾斜了生成概率。
视觉分析
图像看起来真的不同吗?是的。

图 4 提供了并排比较。
- 顶行 (人物) : 左侧 (Promptist) 生成了多样的性别和风格。右侧 (RAt) 针对特定人口统计特征,尽管提示词结构看起来相似,但生成的输出高度一致 (例如,全是男性或全是女性) 。
- 底行 (物体) : 看一下电话的例子 (第 2 行,第 3 列) 。RAt 的提示词隐性地将视觉风格主要引向了特定的电话美学。
它隐秘吗? (不可察觉性)
这种攻击最危险的地方在于用户可能不会察觉。作者测量了 最大偏见关联度 (Maximum Bias Association, MBA) , 用于检查提示词中的词汇是否泄露了秘密。

在 表 2 中,我们看到 RAt-Exp (显式添加偏见词) 的 MBA 得分为完美的 1.000——这意味着它非常明显。然而, RAt 保持了较低的 MBA 得分,通常与原始提示词相当。这证实了 RAt 依靠微妙词汇的组合而非显式标签来实现其目标。
超参数敏感性
最后,研究人员探讨了模型对不同设置的敏感程度。

图 5 突显了所需的微妙平衡。例如 (左上角) ,增加初始 Token 分布权重会使扰动提示词变得更加困难,导致偏见较低但质量较高。相反 (右下角) ,非常高的学习率会破坏过程的稳定性,降低质量。
结论与启示
RAt 框架展示了在不断发展的 AI 辅助创作生态系统中一个重大的漏洞。通过结合视觉监督和混淆损失来优化 Token 分布矩阵,作者表明 T2I-Refine 模型可以被武器化。
它们可以将用户对“一个人”的请求转变为强化特定性别或文化刻板印象的图像流,或者将对“一部手机”的请求转变为特定品牌的隐形广告。
关键要点:
- 隐性攻击是有效的: 你不需要改变提示词的语义含义就能彻底改变视觉输出。
- 视觉监督是关键: RAt 之所以有效,是因为它利用图像生成器本身来寻找触发特定视觉效果的“魔法词汇”。
- 伦理风险: 随着我们越来越依赖 AI “副驾驶”来优化我们的输入,我们必须意识到这些中间环节有能力以我们可能并不打算或未察觉的方式塑造我们的输出。
这篇论文为提示词工程服务的设计敲响了警钟,表明未来的工作不仅要关注性能,还要关注优化过程的鲁棒性和中立性。
](https://deep-paper.org/en/paper/file-3531/images/cover.png)