文章目录
- 一、文章概览
- (一)主要工作
- (二)相关工作
- 二、具体方法
- (一)威胁模型
- (二)树轮水印概述
- (三)构造树轮水印键
- (四)提取用于水印检测的 P 值
- 三、实验
- (一)实验设置
- (二)水印精度和图像质量基准测试
- (三)水印稳健性基准测试
- (四)消融实验
- 四、局限性和未来的工作
论文:Tree-Ring Watermarks: Fingerprints for Diffusion Images that are Invisible and Robust
一、文章概览
(一)主要工作
-
介绍了一种称为树环水印的新技术,该技术可以稳健地识别扩散模型输出的指纹。
- 没有对图像进行事后修改,而是直接影响采样过程,修改生成图像的分布
- 水印在生成场景的潜在布局的微小变化中具体化,无法通过人工检查与其他随机样本区分开
- 水印将模式嵌入到用于采样的初始噪声向量中。这些模式在傅立叶空间中构建,因此它们对于卷积、裁剪、膨胀、翻转和旋转具有不变性。图像生成后,通过反转扩散过程来检索噪声向量来检测水印信号,然后检查嵌入信号。
- 树环水印不需要额外的训练或微调来实现,并且水印只能由控制图像生成模型的各方检测到。
-
在许多测试中验证了水印,测量对图像质量分数的可忽略不计的影响、对转换的高鲁棒性、检测中的低误报率以及具有和不具有文本条件的任意扩散模型的可用性。
- 证明该技术可以轻松应用于任意扩散模型,包括文本条件稳定扩散,作为 FID 损失可以忽略不计的插件。
- 树环水印对于大量常见的图像变换(例如裁剪、颜色抖动、膨胀、翻转、旋转或噪声)比现有方法更加鲁棒。
(二)相关工作
- 扩散模型
- 数字内容加水印
- 指纹识别和水印生成模型
- 扩散模型及其反演
二、具体方法
(一)威胁模型
水印的目标是在不降低图像生成质量的情况下,使模型所有者能够识别某个图像是否是由他们的模型生成的。带有水印的图像用于日常应用会经历各种图像操作和修改。我们将其形式化为一个试图通过常见图像操作移除生成图像中水印的对手,旨在逃避检测。我们还非正式地关注水印在常见使用过程中的鲁棒性。
在这一威胁模型中,水印嵌入者和攻击者依次行动:
- 模型所有者(生成阶段):Gene 拥有生成扩散模型 ε θ ε_θ εθ 并允许通过包含私有水印算法 T T T 的 API 生成图像 x x x 。水印算法 T T T 对生成的分布的影响应该可以忽略不计,以便保持质量并且水印不会留下可见的痕迹。
- Forger:Fiona 通过 API 生成图像 x x x,然后尝试通过应用强数据增强将 x x x 转换为 x ′ x′ x′ 来逃避 T 的检测。后来,Fiona 将 x ′ x′ x′ 用于禁止的目的,并声称 x ′ x′ x′ 是她的知识产权。
- 模型所有者(检测阶段):如果可以访问 ε θ ε_θ εθ 和 T T T,Gene 会尝试确定 x ′ x′ x′ 是否源自 ε θ ε_θ εθ。 Gene 不知道用于调节模型的文本,或其他超参数(例如指导强度和生成步骤数)。
(二)树轮水印概述
傅里叶变换是一种数学变换,用于将时间或空间域的信号转换到频率域。其基本思想是将复杂的信号分解成一系列简单的正弦波(或余弦波)的叠加,每个正弦波具有特定的频率、振幅和相位。通过这种分解,可以更容易地分析和处理信号,尤其是在频率域内。
树轮水印的嵌入:
我们不是将密钥直接印到高斯数组中,这可能会在结果图像中产生明显的图案,而是将密钥印到起始噪声向量的傅里叶变换中。然后使用标准扩散管道将该初始噪声矢量转换为图像,无需任何修改。
树环水印通过在傅里叶变换的频域中精心选择秘钥 k ∗ k^* k∗,结合二进制掩码 M M M,将初始高斯噪声向量 x T x^T xT转换为带有隐蔽图案的傅里叶系数向量 F ( x T ) \mathcal F(x_T) F(xT)。具体来说:我们选择一个二进制掩码 M M M ,并对密钥 k ∗ ∈ C ∣ M ∣ k^* ∈ C^{|M|} k∗∈C∣M∣ 进行采样。因此,初始噪声向量 x T ∈ R L x^T ∈ R^L xT∈RL 可以在傅立叶空间中描述为
F ( x T ) i ∼ { k i ∗ , if i ∈ M N ( 0 , 1 ) , otherwise \mathcal F(x_T)_i \sim \begin{cases} k_i^*, & \text {if $i\in M$} \\ \mathcal N(0,1), & \text{otherwise} \end{cases} F(xT)i∼{ki∗,N(0,1),if i∈Motherwise
- M是一个二进制掩码,用于指示哪些傅里叶系数 F ( x T ) i \mathcal F(x_T)_i F(xT)i需要被修改以嵌入水印
- 对于属于集合 M 的索引 i i i,将傅里叶系数 F ( x T ) i \mathcal{F}(x_T)_i F(xT)i设置为预定义的值 k i ∗ k_i^* ki∗ 。
- 对于不属于集合 M 的索引 i i i,保持傅里叶系数 F ( x T ) i \mathcal{F}(x_T)_i F(xT)i 为标准正态分布的随机值。
- 选择密钥 k ∗ ∈ C ∣ M ∣ k^* ∈ C^{|M|} k∗∈C∣M∣: k ∗ k^* k∗是一个复数向量,长度等于掩码 M M M中的元素数量 ∣ M ∣ |M| ∣M∣,每个 k i ∗ k_i^* ki∗都是一个复数,用于嵌入水印
树轮水印的检测:
在检测时,给定生成的带有水印的图像 x 0 ′ x^′_0 x0′,模型所有者可以通过 DDIM 反演过程获得近似的初始噪声向量 x T ′ ,即 x T ′ = D † θ ( x 0 ′ ) x^′_T,即x^′_T = D^† θ(x^′_0) xT′,即xT′=D†θ(x0′)。其中 D † D^† D†是伪逆,而 θ ( x 0 ′ ) θ(x^′_0) θ(x0′)是生成网络对 x 0 ′ x'_0 x0′的输出。水印检测的度量 d detection distance d_{\text{detection distance}} ddetection distance定义为噪声向量 x T ′ x'_T xT′在水印区域 M 的傅里叶空间中的密钥 k ∗ k^* k∗与对应傅里叶系数之间的平均 L1 距离,即
d detection distance = 1 ∣ M ∣ ∑ i ∈ M ∣ k i ∗ − F ( x T ′ ) i ∣ d_{\text{detection distance}}=\frac{1}{|M|}\sum_{i\in M}|k_i^*-\mathcal F(x'_T)_i| ddetection distance=∣M∣1i∈M∑∣ki∗−F(xT′)i∣
如果水印低于调整的阈值 τ ,则检测到水印。
(三)构造树轮水印键
通过在初始的高斯噪声数组的傅里叶空间中嵌入“密钥”的模式来对图像添加水印。这种方法利用了傅里叶变换在周期信号中的几个经典特性:
- 像素空间中的旋转对应于傅立叶空间中的旋转。
- 像素空间中的平移将所有傅立叶系数乘以常数复数。
- 像素空间中的膨胀/压缩对应于傅里叶空间中的压缩/膨胀。
- 像素空间中的颜色抖动(向通道中的所有像素添加常数)对应于改变零频傅里叶模式的幅度。
基于傅里叶变换的特性设计三种不同类型的密钥,以实现在图像生成和检测过程中的不同需求和性能:
- Tree-RingZeros:
- 掩码选择:使用一个圆形区域作为掩码,这种选择保持了对图像空间旋转的不变性,因为圆形在旋转下保持不变。
- 密钥选择:密钥被选为一个全零数组,这意味着在水印嵌入的过程中,傅里叶变换的部分将直接保留为零。这种方法使得水印对于图像的平移、裁剪和扩展操作具有不变性。然而,全零密钥会严重偏离高斯分布,可能影响到生成图像的质量,并且阻止了使用多个不同的密钥来区分不同的模型。
- Tree-RingRand:
- 掩码选择:具体描述中未提及到具体的掩码选择,但通常也会选择一个旋转不变的形状。
- 密钥选择:从高斯分布中随机选择一个固定的密钥 k ∗ k^* k∗。这种密钥具有与初始噪声数组傅里叶模式相似的独立同分布的高斯性质。因此,这种方法对生成图像的质量影响较小,并允许模型所有者拥有多个不同的密钥来进行水印识别。但是由于随机性质,这种方法对于图像的平移、旋转等操作不具备不变性。
- Tree-RingRings:
- 掩码选择:同样选择一种旋转不变的掩码形状
- 密钥选择:引入了一个由多个环组成的模式,每个环上的值是从高斯分布中随机选择的常数。这种方式使得水印对于图像的旋转具有不变性,因为环的形状在旋转下保持不变。同时,选择每个环的常数值来自高斯分布,有助于在一定程度上保持水印的不可察觉性和生成图像的质量。
(四)提取用于水印检测的 P 值
1、P值
- 设计可靠的水印检测器时的一个重要考量:提供一个可解释的p值,用于评估观察到的水印是由于随机机会在自然图像中出现的概率。
- 除了使检测结果可解释外,P 值还可用于设置检测阈值,即当 P 低于所选阈值 α 时,水印即被 “检测”。选择合适的 α 可以明确控制假阳性率,即错误地认为水印存在的概率,使得错误指控在统计上不太可能发生。
2、构建统计检验
- 为了检测水印的存在,构建了一种统计测试,该测试可以生成严格的 P 值。前向扩散过程的设计目的是将图像映射到高斯噪声上,因此我们假定一个空假设,即自然图像阵列 x T ′ x'_T xT′的条目是高斯。
- 实践结果表明,这种对自然图像的高斯分布假设在很大程度上是成立的。这意味着水印检测方法在实际应用中是可行和有效的,能够较好地区分出水印的存在与否。
3、数学推导:
-
H 0 H_0 H0假设:对于任何测试图像 x ′ 0 x′_0 x′0,我们计算近似初始向量 x T ′ x'_T xT′(自然图像得到的逆噪声数组),然后设置 y = F ( x ′ T ) y = F (x′_T) y=F(x′T)。然后定义以下原假设:
H 0 : y 是从高斯分布 N ( 0 , σ 2 I C ) 中得到的 \text{H$_0$: } y \text{ 是从高斯分布 }\mathcal N(0,\sigma^2I_{\mathbb{C}})\text{中得到的} H0: y 是从高斯分布 N(0,σ2IC)中得到的
其中 σ 2 \sigma^2 σ2是一个未知方差,使用公式 σ 2 = 1 M ∑ i ∈ M ∣ y i ∣ 2 \sigma^2=\frac{1}{M}\sum_{i\in M}|y_i|^2 σ2=M1∑i∈M∣yi∣2来估计每个图像。 -
为了验证上述假设,定义分数:
η = 1 σ 2 ∑ i ∈ M ∣ k i ∗ − y ∣ 2 \eta=\frac{1}{\sigma^2}\sum_{i\in M}|k_i^*-y|^2 η=σ21i∈M∑∣ki∗−y∣2
当 H 0 H_0 H0为真时, η \eta η的分布恰好是一个非中心 χ 2 \chi^2 χ2分布,自由度为 ∣ M ∣ |M| ∣M∣,非中心参数 λ = 1 σ 2 ∑ i ∣ k i ∗ ∣ 2 \lambda=\frac{1}{\sigma^2}\sum_i|k_i^*|^2 λ=σ21∑i∣ki∗∣2。如果 η \eta η值太小而不能随机出现,就认为图像被加了水印。 -
观测到小至 η \eta η值的概率由非中心 χ 2 \chi^2 χ2分布的累积分布函数 Φ χ 2 \Phi_{\chi^2} Φχ2给出:
p = Pr ( χ ∣ M ∣ , λ 2 ≤ η ∣ H 0 ) = Φ χ 2 ( z ) p=\Pr(\chi^2_{|M|,\lambda}\leq \eta|H_0)=\Phi_{\chi^2}(z) p=Pr(χ∣M∣,λ2≤η∣H0)=Φχ2(z)
对于每个提示,显示带有和不带有水印的生成图像,以及经过转换的带有水印的图像。对于每个图像,我们报告一个p值。正如预期的那样,对于没有加水印的图像,这些值很大,而当存在水印时,这些值很小(允许拒绝原假设)。变换降低了水印强度,体现在p值的增加上。
三、实验
(一)实验设置
采用stable diffusion-v2 潜在文本到图像扩散模型,以及一个 256 × 256 ImageNet diffusion model 。
比较分析包括三种基线方法:
- 两种免训练方法 DwtDct 和 DwtDctSvd
- 一种基于 GAN 的预训练水印模型 RivaGAN
(二)水印精度和图像质量基准测试
- 衡量水印有效性:AUROC、TPR@1%FPR
- 衡量水印图像生成质量:FID、CLIP分数
实验结果显示在干净的环境中,除 DwtDct 和所有树环水印变体外,所有基线都具有很强的可探测性。Tree-RingRand 和 Tree-RingRings 对 FID 的影响可以忽略不计,对 CLIP 分数也没有影响。
(三)水印稳健性基准测试
除了高斯噪声和颜色抖动外, Tree-RingZeros对大多数扰动都表现出很高的鲁棒性。同样, Tree-RingRands在大多数情况下都很稳健,但在面对旋转时表现较差,这也在意料之中。总的来说, Tree-RingRings的平均性能最好,同时还能为模型所有者提供多种不同随机密钥的灵活性。值得注意的是,基线方法 RivaGan 在大多数情况下也表现出很强的鲁棒性,但需要强调的是,我们的方法无需训练,是真正的 "隐形 "方法。
(四)消融实验
1、生成时间步数和检测时间步数
即使生成时间和检测时间的步数差异很大,当模型所有者在不知道真实生成时间步数的情况下使用合理数量的推理步数进行检测时,AUC 的下降幅度也很小。这表明 DDIM 反演在近似初始噪声矢量时保持了其鲁棒性,并且无论采用多少步,都能有效地进行水印检测。有趣的是,我们注意到一种趋势,即检测时推理步骤越少,或生成时推理步骤越多,检测能力似乎就越强。这是一种有利的情况,因为模型所有者现在实际上不需要执行大量的 DDIM 反演步骤,同时,模型所有者(或用户)可以自由选择达到最佳质量的生成步骤数[Rombach 等人,2022]。
2、水印半径
注入水印图案的半径是影响鲁棒性和生成质量的另一个关键超参数。相应的结果如图 6(a) 所示。随着水印半径的增加,水印的鲁棒性也会提高。尽管如此,生成质量还是需要权衡。我们总体上确认半径为 16 时,既能提供合理的低 FID,又能保持较强的检测能力。
3、指导尺度
指导尺度用于控制文本条件的重要性。较高的指导尺度意味着生成更严格遵守文本指导,而较低的指导尺度则为模型提供了更大的创作自由。对于我们采用的稳定扩散模型来说,最佳指导尺度通常在 5 到 15 之间。我们在图 6(b) 中探讨了从 2 到 18 的这一系数,并强调在检测期间,引导的强度始终是未知的。虽然由于在检测过程中缺乏这种地面实况指导,较高的指导尺度确实会增加 DDIM 反演的误差,但即使在指导尺度为 18 时,水印仍然是稳健可靠的。这对于实际应用来说也是有益的,因为模型所有者可以为其用户保留可调整的引导尺度设置。
4、攻击强度
即使在核大小为 40 的高斯模糊等极端扰动下,树环水印仍能被可靠地检测到。
四、局限性和未来的工作
- Tree-Ring Watermarking 要求模型所有者在推理过程中使用 DDIM。如今,DDIM 仍然可能是最流行的采样方法,因为它对 GPU 资源的使用经济且质量高。然而,如果 DDIM 失宠,建议的水印将需要适应其他采样方案。
- 此外,所提出的水印在设计上只能由模型所有者验证,因为需要模型参数来执行反演过程。对手无法对水印执行白盒攻击,甚至无法验证一组操作是否破坏了水印。但是,它也限制第三方在不依赖 API 的情况下检测水印。
- 目前还不清楚多个密钥 k ∗ k^* k∗ 的容量有多大、是否可以为 API 的每个用户分配一个唯一的密钥?