【论文笔记】Content-based Unrestricted Adversarial Attack

在这里插入图片描述图2:Adversarial Content Attack的流程。首先使用Image Latent Mapping将图像映射到潜变量空间。然后,用Adversarial Latent Optimization生成对抗性样本。最后,生成的对抗性样本可以欺骗到目标分类模型。

3.1 Image Latent Mapping

对于扩散模型,最简单的图像映射是DDIM采样的逆过程,使用prompt P \mathcal{P} P的条件嵌入 C = ψ ( P ) \mathcal{C}=\psi(\mathcal{P}) C=ψ(P),基于常微分方程过程可以在小步长限制下反转:
z t + 1 = α t + 1 α t z t + α t + 1 ( 1 α t + 1 − 1 − 1 α t − 1 ) ⋅ ϵ θ ( z t , t , C ) (2) z_{t+1}=\sqrt{\frac{\alpha_{t+1}}{\alpha_t}}z_t+\sqrt{\alpha_{t+1}}(\sqrt{\frac{1}{\alpha_{t+1}}-1}-\sqrt{\frac{1}{\alpha_t}-1})\cdot\epsilon_\theta(z_t,t,\mathcal{C})\tag{2} zt+1=αtαt+1 zt+αt+1 (αt+111 αt11 )ϵθ(zt,t,C)(2)
其中 z 0 z_0 z0是给定的真实图像。图像的描述prompt通常由图像描述模型(如BLIP v2)自动生成。

给定 w w w作为引导比例参数, ∅ = ψ ("") \varnothing=\psi\text{("")} =ψ("")是空文本的嵌入表示,无分类器引导(classifier-free guidance)预测可以表示为:
ϵ ~ θ ( z t , t , C , ∅ ) = w ⋅ ϵ θ ( z t , t , C ) + ( 1 − w ) ⋅ ϵ θ ( z t , t , ∅ ) (3) \tilde{\epsilon}_\theta(z_t,t,\mathcal{C},\varnothing)=w\cdot\epsilon_\theta(z_t,t,\mathcal{C})+(1-w)\cdot\epsilon_\theta(z_t,t,\varnothing)\tag{3} ϵ~θ(zt,t,C,)=wϵθ(zt,t,C)+(1w)ϵθ(zt,t,)(3)
Stable Diffusion中 w = 7.5 w=7.5 w=7.5。噪声是通过 ϵ θ \epsilon_\theta ϵθ预测出来的,用于去噪过程,因此每一步都会有细微的误差,随着许多步去噪,导致误差累积越来越大,破坏了噪声的高斯分布,诱发不真实的视觉效果。

为减小累计误差,对每一步 t t t优化空文本嵌入 ∅ \varnothing 。首先使用 w = 1 w=1 w=1在DDIM的逆过程输出一系列潜变量表示 { z 0 ∗ , ⋯ , z T ∗ } \{z_0^*,\cdots,z_T^*\} {z0,,zT},其中 z 0 ∗ = z 0 z_0^*=z_0 z0=z0。然后对于时间戳 { T , ⋯ , 1 } \{T,\cdots,1\} {T,,1},使用 w = 7.5 w=7.5 w=7.5 z ˉ T = z t \bar{z}_T=z_t zˉT=zt N N N次迭代中进行了如下优化:
min ⁡ ∅ t ∣ ∣ z t − 1 ∗ − z t − 1 ( z ˉ t , t , C , ∅ ) ∣ ∣ 2 2 (4) \min_{\varnothing_t}||z_{t-1}^*-z_{t-1}(\bar{z}_t,t,\mathcal{C},\varnothing)||_2^2\tag{4} tmin∣∣zt1zt1(zˉt,t,C,)22(4)
z t − 1 ( z ˉ t , t , C , ∅ ) = α t − 1 α t z ˉ t + α t − 1 ( 1 α t − 1 − 1 − 1 α t − 1 ) ⋅ ϵ ~ θ ( z t , t , C , ∅ ) (5) z_{t-1}(\bar{z}_t,t,\mathcal{C},\varnothing)=\sqrt{\frac{\alpha_{t-1}}{\alpha_t}}\bar{z}_t+\sqrt{\alpha_{t-1}}(\sqrt{\frac{1}{\alpha_{t-1}}-1}-\sqrt{\frac{1}{\alpha_t}-1})\cdot\tilde{\epsilon}_\theta(z_t,t,\mathcal{C},\varnothing)\tag{5} zt1(zˉt,t,C,)=αtαt1 zˉt+αt1 (αt111 αt11 )ϵ~θ(zt,t,C,)(5)
在每一步的最后,将 z ˉ t − 1 \bar{z}_{t-1} zˉt1更新为 z t − 1 ( z ˉ t , t , C , ∅ t ) z_{t-1}(\bar{z}_t,t,\mathcal{C},\varnothing_t) zt1(zˉt,t,C,t)。最后得到原始图像在潜变量空间内的表示,包含噪声 z ˉ T \bar{z}_T zˉT,空文本嵌入 ∅ t \varnothing_t t和文本嵌入 C = ψ ( P ) \mathcal{C}=\psi(\mathcal{P}) C=ψ(P)

3.2 Adversarial Latent Optimization

本节提出了一种针对潜变量的优化方法,最大化在非限制对抗样本上的攻击性能。经过image latent mapping后得到的潜变量空间中,空文本嵌入 ∅ t \varnothing_t t确保了重建的图像的质量,条件嵌入 C \mathcal{C} C保证了图像的语义信息。同时优化两种嵌入并不现实,考虑到噪声 z ˉ T \bar{z}_T zˉT很大程度上表示了潜变量空间中图像的信息,因此选择优化噪声 z ˉ T \bar{z}_T zˉT。但是这种优化的复杂梯度计算和取值范围溢出的问题仍然是挑战。

基于image latent mapping生成的潜变量,将扩散模型中的去噪过程Eq.5定义为 Ω ( ⋅ ) \Omega(\cdot) Ω(),其包含 T T T次迭代:
Ω ( z T , T , C , { ∅ t } t = 1 T ) = z 0 ( z 1 ( ⋯ , ( z T − 1 , T − 1 , C , ∅ T − 1 ) , ⋯ , 1 , C , ∅ 1 ) , 0 , C , ∅ 0 ) (6) \Omega(z_T,T,\mathcal{C},\{\varnothing_t\}_{t=1}^T)=z_0(z_1(\cdots,(z_{T-1},T-1,\mathcal{C},\varnothing_{T-1}),\cdots,1,\mathcal{C},\varnothing_1),0,\mathcal{C},\varnothing_0)\tag{6} Ω(zT,T,C,{t}t=1T)=z0(z1(,(zT1,T1,C,T1),,1,C,1),0,C,0)(6)
由此,重新构建的模型可表示为 z ˉ 0 = Ω ( z T , T , C , { ∅ t } ) \bar{z}_0=\Omega(z_T,T,\mathcal{C},\{\varnothing_t\}) zˉ0=Ω(zT,T,C,{t})。结合Eq.7,对抗性目标优化可以表示为:
max ⁡ δ L ( F θ ( z ˉ 0 , y ) ) , s . t . ∣ ∣ δ ∣ ∣ ∞ ≤ κ , z ˉ 0 = Ω ( z T + δ , T , C , { ∅ t } ) (7) \max_\delta \mathcal{L}(\mathcal{F}_\theta(\bar{z}_0,y)),\ s.t.||\delta||_\infty\leq\kappa,\ \bar{z}_0=\Omega(z_T+\delta,T,\mathcal{C},\{\varnothing_t\})\tag{7} δmaxL(Fθ(zˉ0,y)), s.t.∣∣δκ, zˉ0=Ω(zT+δ,T,C,{t})(7)
其中 z ˉ 0 \bar{z}_0 zˉ0是自然图像, δ \delta δ是潜变量空间中的对抗性扰动。

损失函数包含两部分:

  • 交叉熵损失 L c e \mathcal{L}_{ce} Lce,用于引导对抗性样本误导分类器;
  • 均方误差损失 L m s e \mathcal{L}_{mse} Lmse,用于引导对抗性样本在 l 2 l_2 l2距离上尽可能接近真实的干净样本。
    由此,完整的损失函数 L \mathcal{L} L可以表示为:

L ( F θ ( z ˉ 0 ) , y , z 0 ) = L c e ( F θ ( z ˉ 0 ) , y ) − β ⋅ L m s e ( z ˉ 0 , z 0 ) \mathcal{L}(\mathcal{F}_\theta(\bar{z}_0),y,z_0)=\mathcal{L}_{ce}(\mathcal{F}_\theta(\bar{z}_0),y)-\beta\cdot\mathcal{L}_{mse}(\bar{z}_0,z_0) L(Fθ(zˉ0),y,z0)=Lce(Fθ(zˉ0),y)βLmse(zˉ0,z0)
本文中 β = 0.1 \beta=0.1 β=0.1,损失函数的目标是最大化交叉熵损失冰最小化和干净样本的 l 2 l_2 l2距离。为保证 z 0 z_0 z0 z ˉ 0 \bar{z}_0 zˉ0的一致性,假设当 δ \delta δ很小时(即 ∣ ∣ δ ∣ ∣ ∞ ≤ κ ||\delta||_\infty\leq\kappa ∣∣δκ时), δ \delta δ不会改变 z 0 z_0 z0 z ˉ 0 \bar{z}_0 zˉ0的一致性,关键在于产生最大分类损失的 δ \delta δ

类似于传统的对抗攻击,使用基于梯度的技术,通过 δ ≃ η ∇ z T L ( F θ ( z ˉ 0 ) , y ) \delta\simeq\eta\nabla_{z_T}\mathcal{L}(\mathcal{F}_\theta(\bar{z}_0),y) δηzTL(Fθ(zˉ0),y)来估计噪声 δ \delta δ,其中 η \eta η是发生在梯度方向上的扰动量。利用链式规则对 ∇ z T L ( F θ ( z ˉ 0 ) , y ) \nabla_{z_T}\mathcal{L}(\mathcal{F}_\theta(\bar{z}_0),y) zTL(Fθ(zˉ0),y)进行展开,可以得到如下的导数项:
∇ z T L ( F θ ( z ˉ 0 ) , y ) = ∂ L ∂ z ˉ 0 ⋅ ∂ z ˉ 0 ∂ z 1 ⋅ ∂ z 1 ∂ z 2 ⋯ ∂ z T − 1 ∂ z T (9) \nabla_{z_T}\mathcal{L}(\mathcal{F}_\theta(\bar{z}_0),y)=\frac{\partial\mathcal{L}}{\partial\bar{z}_0}\cdot\frac{\partial\bar{z}_0}{\partial z_1}\cdot\frac{\partial z_1}{\partial z_2}\cdots\frac{\partial z_{T-1}}{\partial z_T}\tag{9} zTL(Fθ(zˉ0),y)=zˉ0Lz1zˉ0z2z1zTzT1(9)

Skip Gradient
尽管梯度是可导的,通过此式推导出完整的计算图是不可行的。

  • ∂ L ∂ z ˉ 0 \frac{\partial\mathcal{L}}{\partial\bar{z}_0} zˉ0L是分类器关于重构图像 z ˉ 0 \bar{z}_0 zˉ0的导数,并提供对抗梯度方向。
  • ∂ z t ∂ z t + 1 \frac{\partial z_t}{\partial z_{t+1}} zt+1zt,每一次导数的计算都代表一次反向传播的计算。
  • 一个完整的去噪过程累积了 T T T个计算图,导致内存溢出。

本文提出了Skip Gradient来估计 ∂ L ∂ z ˉ 0 ⋅ ∂ z ˉ 0 ∂ z 1 ⋅ ∂ z 1 ∂ z 2 ⋯ ∂ z T − 1 ∂ z T \frac{\partial\mathcal{L}}{\partial\bar{z}_0}\cdot\frac{\partial\bar{z}_0}{\partial z_1}\cdot\frac{\partial z_1}{\partial z_2}\cdots\frac{\partial z_{T-1}}{\partial z_T} zˉ0Lz1zˉ0z2z1zTzT1。去噪过程旨在消除DDIM采样中加入的高斯噪声,DDIM利用重参数化技巧,在任意第 t t t步下进行闭式采样:
z t = α t z 0 + 1 − α t ε , ε ∼ N ( 0 , I ) (10) z_t=\sqrt{\alpha_t}z_0+\sqrt{1-\alpha_t}\varepsilon,\ \varepsilon\sim\mathcal{N}(0,I)\tag{10} zt=αt z0+1αt ε, εN(0,I)(10)
对Eq.10变形,得到 z 0 = 1 α t z t − 1 − α t α t ε z_0=\frac{1}{\sqrt{\alpha_t}}z_t-\sqrt{\frac{1-\alpha_t}{\alpha_t}}\varepsilon z0=αt 1ztαt1αt ε。由此,得到 ∂ z 0 ∂ z t = 1 α t \frac{\partial z_0}{\partial z_t}=\frac{1}{\sqrt{\alpha_t}} ztz0=αt 1。Stable Diffusion中,步长 t t t最多是1000,因此有 lim ⁡ t → 1000 ∂ z 0 ∂ z t = lim ⁡ t → 1000 1 α t ≈ 14.58 \lim_{t\rightarrow 1000}\frac{\partial z_0}{\partial z_t}=\lim_{t\rightarrow 1000}\frac{1}{\sqrt{\alpha_t}}\approx 14.58 limt1000ztz0=limt1000αt 114.58。总结而言, ∂ z 0 ∂ z t \frac{\partial z_0}{\partial z_t} ztz0可以被看做常数 ρ \rho ρ,Eq.9可以变为 ∇ z T L ( F θ ( z ˉ 0 ) , y ) = ρ ∂ L ∂ z ˉ 0 \nabla_{z_T}\mathcal{L}(\mathcal{F}_\theta(\bar{z}_0),y)=\rho\frac{\partial\mathcal{L}}{\partial\bar{z}_0} zTL(Fθ(zˉ0),y)=ρzˉ0L。综上所述,Skip Gradients估计了去噪过程的梯度,减少了计算和存储需求。

Differentiable Boundary Processing
扩散模型没有严格限制 z ˉ 0 \bar{z}_0 zˉ0的数值取值范围, z T z_T zT的修改可能会导致其取值范围被超出。由此引入differentiable boundary processing ϱ ( ⋅ ) \varrho(\cdot) ϱ() ϱ ( ⋅ ) \varrho(\cdot) ϱ()将超出 [ 0 , 1 ] [0,1] [0,1]范围的数值压缩到 [ 0 , 1 ] [0,1] [0,1]中:
ϱ ( x ) = { tanh ⁡ ( 1000 x ) / 10000 x < 0 x 0 ≤ x < 1 tanh ⁡ ( 1000 ( x − 1 ) ) / 10001 x > 1 (11) \varrho(x) = \begin{cases} \tanh(1000x)/10000 \qquad & x<0 \\ x \qquad & 0\leq x<1 \\ \tanh(1000(x-1))/10001 \qquad & x > 1 \end{cases}\tag{11} ϱ(x)= tanh(1000x)/10000xtanh(1000(x1))/10001x<00x<1x>1(11)
接下来定义 Π κ \Pi_\kappa Πκ为对抗扰动 δ \delta δ κ \kappa κ球面上的投影。引入动量 g g g,将优化对抗性潜变量为:
g k ← μ ⋅ g k − 1 + ∇ z T L ( F θ ( ( ϱ ( z ˉ 0 ) , y ) ) ) ∣ ∣ ∇ z T L ( F θ ( ( ϱ ( z ˉ 0 ) , y ) ) ) ∣ ∣ 1 (12) g_k\leftarrow \mu\cdot g_{k-1}+\frac{\nabla_{z_T}\mathcal{L}(\mathcal{F}_\theta((\varrho(\bar{z}_0),y)))}{||\nabla_{z_T}\mathcal{L}(\mathcal{F}_\theta((\varrho(\bar{z}_0),y)))||_1}\tag{12} gkμgk1+∣∣zTL(Fθ((ϱ(zˉ0),y)))1zTL(Fθ((ϱ(zˉ0),y)))(12)
δ k ← Π κ ( δ k − 1 + η ⋅ sign ( g k ) ) (13) \delta_k\leftarrow\Pi_\kappa(\delta_{k-1}+\eta\cdot\text{sign}(g_k))\tag{13} δkΠκ(δk1+ηsign(gk))(13)
综上所述,adversarial latent optimization采用跳跃梯度来确定去噪过程的梯度,结合可微边界处理来调节对抗样本的取值范围,根据梯度进行迭代优化。结合图像潜在映射,算法1中说明了adversarial content attack的详细过程。
在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/diannao/21771.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

升级 macOS 12 之后,CleanMyMac 闪退怎么办?

​​好多朋友在升级 macOS 12 之后&#xff0c;发现 CleanMyMac 出现闪退问题&#xff0c;这可能是TNT的证书过期造成的&#xff0c;那么如何解决CleanMyMac闪退的问题呢&#xff1f; 今天给大家带来了三种解决方法&#xff0c;如下&#xff1a; 一、打开“终端”&#xff0c;运…

回溯算法常见思路

回溯问题 回溯法&#xff0c;一般可以解决如下几种问题&#xff1a; 组合问题&#xff1a;N个数里面按一定规则找出k个数的集合切割问题&#xff1a;一个字符串按一定规则有几种切割方式子集问题&#xff1a;一个N个数的集合里有多少符合条件的子集排列问题&#xff1a;N个数…

for深入学习

目录 练习&#xff1a; 例1&#xff1a; 求解0-100中整除3的数有哪些 例2&#xff1a; 求0-100中含数字9个个数 作业&#xff1a; 练习&#xff1a; 例1&#xff1a; 求解0-100中整除3的数有哪些 代码&#xff1a; #include<stdio.h> int main() {printf("整…

揭秘!天工AI如何帮我轻松搞定产品经理工作,低调强大

聊到AI搜索&#xff0c;总会想起那句话&#xff1a;“领导者和追随者最大的区别在于创新” 作为一名AI产品经理&#xff0c;我深刻体会到搜索引擎对我们日常生活的重要性&#xff0c;在本文中我将会分享我是如何使用图文并茂的天工AI搜索引擎辅助我完成产品经理的工作。 从最初…

强大的机器学习建模扩展包:mlxtend

公众号&#xff1a;尤而小屋编辑&#xff1a;Peter作者&#xff1a;Peter 大家好&#xff0c;我是Peter~ 今天给大家介绍一个强大的机器学习建模扩展包&#xff1a;mlxtend。 mlxtend(machine learning extensions&#xff0c;机器学习扩展)是一个用于日常数据分析、机器学习…

LeetCode216组合总和3

题目描述 找出所有相加之和为 n 的 k 个数的组合&#xff0c;且满足下列条件&#xff1a;只使用数字1到9。每个数字 最多使用一次。返回 所有可能的有效组合的列表 。该列表不能包含相同的组合两次&#xff0c;组合可以以任何顺序返回。 解析 递归加剪枝&#xff0c;搜索长度达…

基于JSP的美食推荐管理系统

你好呀&#xff0c;我是学长猫哥&#xff01;如果有需求可以文末加我。 开发语言&#xff1a;Java 数据库&#xff1a;MySQL 技术&#xff1a;JSPJavaBeansServlet 系统展示 首页 用户注册 用户登录 热门美食 摘要 本文介绍了一个基于JSP技术的美食推荐管理系统&#xff0…

企业内业务系统与Activiti流程引擎的结合(十一)

摘要:前文分享了企业内部系统集成Activiti的架构和API设计,这里再介绍下 bpmn 流程图的绘制以及与 流程图与bpm后台服务代码的结合点。 一、画流程图 以使用 eclipse 画流程图为例 1. 将 Activiti BPMN 插件安装到 eclipse 插件安装成本后的效果:新建向导中出现 Activiti…

ARM公司发展历程

Arm从1990年成立前开始&#xff0c;历经漫长岁月树立各项公司里程碑及产品成就&#xff0c;一步步成为全球最普及的运算平台。 添加图片注释&#xff0c;不超过 140 字&#xff08;可选&#xff09; Acorn 时期 1978年&#xff0c;Chris Curry和Hermann Hauser共同创立了Acorn…

electron初学

最近有一个开发桌面端的业务&#xff0c;考虑到跨平台就使用了electron。 引用官网&#xff1a;Electron是一个使用 JavaScript、HTML 和 CSS 构建桌面应用程序的框架。 嵌入 Chromium 和 Node.js 到 二进制的 Electron 允许您保持一个 JavaScript 代码代码库并创建 在Windows…

OpenAI 近期动荡:解雇 Sam Altman 事件分析与 AI 未来展望

引言 OpenAI 的动荡从未停止。最近&#xff0c;由于 OpenAI 高层领导的更迭&#xff0c;引发了广泛的关注和讨论。特别是在 Sam Altman 被解雇后&#xff0c;再次回归 CEO 职位的过程&#xff0c;更是引起了公众和业内的巨大反响。前 OpenAI 董事会成员 Helen Toner 在最新一期…

如何利用AI大模型给我写程序

文章目录 1&#xff0c;应用情景&#xff08;给文件夹里的图片批量重命名&#xff09;2&#xff0c;选择合适的AI大模型3&#xff0c;复制AI给出来的代码&#xff0c;在本地执行4&#xff0c;结果检查 1&#xff0c;应用情景&#xff08;给文件夹里的图片批量重命名&#xff09…

JasperReport-动态数据源数据填充

一、数据填充 在正式环境中,报表中的内容或数据通常是通过查询底层数据源获取然后再进行数据填充。JasperReport的JAVA SDK中,提供了多种方法提供数据填充(如下其中一个示例): /** * 填充数据构造JasperPrint * is: 文件输入流 * parameters:参数 * connection:数据源…

基于java的CRM客户关系管理系统(六)

目录 5.3 表现层设计 5.3.1 模型层&#xff08;M&#xff09; 5.3.2 视图层&#xff08;V&#xff09; 5.3.3 控制层&#xff08;C&#xff09; 5.4 系统主要功能模块的实现 5.4.1 登录功能的实现 5.4.2 客户管理的实现 5.5 本章小结 参考文献 前面内容请移步 基于java…

k8s学习--Secret详细解释与应用

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 Secret什么是Secret?Secret四种类型及其特点Secret应用案例&#xff08;1&#xff09;将明文密码进行base64编码&#xff08;2&#xff09;编写创建secret的YAML文…

笔试训练2

牛客.单词搜索 刚开始我就想是搜索&#xff0c;但是不清楚bfs还是dfs更好&#xff0c;我尝试了bfs但是队列存东西&#xff0c;没有我想象的那么好写&#xff0c;所以我决定试试dfs import java.util.*;public class Solution {static int m 0;static int n 0;static int […

【人工智能Ⅱ】实验8:生成对抗网络

实验8&#xff1a;生成对抗网络 一&#xff1a;实验目的 1&#xff1a;理解生成对抗网络的基本原理。 2&#xff1a;学会构建改进的生成对抗网络&#xff0c;如DCGAN、WGAN、WGAN-GP等。 3&#xff1a;学习在更为真实的数据集上应用生成对抗网络的方法。 二&#xff1a;实验…

SaaS销售新指标|一文带你读懂什么是反向拒付指标

saas企业销售也需要一系列的指标来衡量企业运营情况如何&#xff1f;有哪些值得改善的地方&#xff1f;今天林叔发现一个比较有意思的新指标&#xff1a;反向拒付。希望能帮助saas企业更好的运营。 一、什么是反向拒付&#xff1f; **反向拒付指标&#xff08;反拒付指标&…

C基础-标准库下

上:http://t.csdnimg.cn/qj5uA 目录 七. math.h 八. setjmp.h 九. signal.h 十. stdarg.h 十一.stddef.h 十二. stdio.h 十三. stdlib. 十四. string.h 十五. time.h 七. math.h 定义了各种数学函数和一个宏。 宏和函数描述 序号宏 & 描述1HUGE_VAL 当函数的结…

Vue3——实现word,pdf上传之后,预览功能(实测有效)

vue-office/pdf - npm支持多种文件(**docx、excel、pdf**)预览的vue组件库&#xff0c;支持vue2/3。也支持非Vue框架的预览。. Latest version: 2.0.2, last published: a month ago. Start using vue-office/pdf in your project by running npm i vue-office/pdf. There are …