论文阅读——Imperceptible Adversarial Attack via Invertible Neural Networks

Imperceptible Adversarial Attack via Invertible Neural Networks

作者:Zihan Chen, Ziyue Wang, Junjie Huang*, Wentao Zhao, Xiao Liu, Dejian Guan

解决的问题:虽然视觉不可感知性是对抗性示例的理想特性,但传统的对抗性攻击仍然会产生可追踪的对抗扰动。
代码:https://github.com/jjhuangcs/AdvINN
类型:黑盒 目标攻击,

摘要:

作者利用可逆神经网络(AdvINN)方法进行对抗性攻击,生成鲁棒且难以察觉的对抗性示例。AdvINN利用INN的信息保留属性,添加目标类的指定信息、删除与原始类别不同的信息来生成对抗样本。

引言部分引出对抗攻击示例

虽然对抗样本的存在可能会阻碍深度学习在风险敏感领域的应用,但它进一步促进了对深度学习鲁棒性的研究。

现有对抗样本的类别:

  • 在原始图像上添加扰动来生成对抗样本:FGSM系列的对抗攻击方法+混合其他类别的信息来生成对抗样本,这种方法可能会导致噪声被感知和图像存储容量的增加;
  • 在原始图像上丢弃部分信息来生成对抗样本,这种方法可能会影响目标攻击的性能。

方法整体概述

给定一张良性图像 x c l n x_{cln} xcln,其标签为 c c c,作者的目标是通过丢弃类 c c c的discriminant information和添加target image x t g t x_{tgt} xtgt的对抗细节,同时能够通过残差图像 x r x_r xr解析添加和丢弃的特征信息。方案整体包含Invertible Information Exchange Module (IIEM)和目标图像选择和学习(Target image selection and learning)两个模块,整体概述如下图所示:
在这里插入图片描述

  • IIEM模块 θ \theta θ f θ ( ⋅ ) {f_\theta }({\cdot}) fθ()的参数,由Invertible Information Exchange Module (IIEM), Target Image Learning Module (TILM) 和loss functions三个模块组成用于优化;IIEM由损失函数驱动,通过执行 x c l n {x_{cln }} xcln x t g t {x_{tgt}} xtgt的信息交换来生成对抗图像。由于IIEM的保留属性,输入图像 ( x c l n , x t g t ) ({x_{cln}},{x_{tgt}}) (xcln,xtgt)和输出图像 ( x a d v , x r ) ({x_{adv}},{x_{r}}) (xadv,xr)是相同的且 ( x a d v , x r ) = f θ − 1 ( x c l n , x t g t ) ({x_{adv}},{x_r})= {f_\theta }^{ - 1}({x_{cln }},{x_{tgt}}) (xadv,xr)=fθ1(xcln,xtgt)。AdvINN生成对抗样本的目标函数定义如下:
    在这里插入图片描述
    L a d v ( ⋅ ) \mathcal{L_{adv}}( \cdot ) Ladv()表示对抗损失, L r e c ( ⋅ ) \mathcal{L_{rec}}( \cdot ) Lrec()表示重构损失, λ a d v {\lambda _{adv}} λadv 表示正则参数, ε \varepsilon ε表示对抗扰动预算。

-target image选择: target image是对抗信息的来源,可以从highest confidence target image (HCT)、universal adversarial perturbation (UAP)或online learned classifier guided target image( CGT)中选择;

方法详细阐述:

Invertible Information Exchange Module (IIEM)

该模块主要包括离散小波变换和仿射偶尔两个模块,示意图如下:
在这里插入图片描述

  1. 离散小波变换:作者使用离散小波变换(正文使用的是哈儿小波变换)用以区分输入干净和目标图像分解为低频和高频成分。分解低频和高频特征有助于修改输入图像的高频成分,因而可以产生更不易察觉的对抗样本(注意:修改高频成分生成的对抗样本更不易被察觉。)离散小波变换 T ( ⋅ ) \mathcal{T}(\cdot) T()中,输入图像 x x x可被转换成小波域 T ( x ) \mathcal{T}(x) T(x),该域上包含一个低频子带特征和3个高频子带特征。在IIEM的输出端,逆离散小波变换 T − 1 ( ⋅ ) {\mathcal{T}^{-1}}( \cdot ) T1()用于重构特征到图像域。
  2. 仿射耦合模块:可逆信息交换模块由 M M M个Affine Coupling Blocks(仿射耦合模块)组成。 w c l n i w_{cln }^i wclni w t g t i w_{tgt}^i wtgti表示第 i i i个Affine Coupling Blocks的输入特征, w c l n i = T ( x c l n ) w_{cln }^i = T({x_{cln }}) wclni=T(xcln), w t g t i = T ( x t g t ) w_{tgt}^i = T({x_{tgt}}) wtgti=T(xtgt)。第 i i i个Affine Coupling Blocks的前向过程可表示为:
    在这里插入图片描述
    Θ \Theta Θ表示两个矩阵对应相乘, α \alpha α表示一个sigmod 函数乘以一个常数因子, ψ ( ⋅ ) , ρ ( ⋅ ) , η ( ⋅ ) \psi ( \cdot ),\rho ( \cdot ),\eta ( \cdot ) ψ(),ρ(),η()表示dense network architecture。给定第M个仿射耦合模块的输出,利用逆小波变换可获得对抗图像和残差图像: x a d v = T − 1 ( w c l n M ) , x r = T − 1 ( w t g t M ) {x_{adv}} = {T^{ - 1}}(w_{cln }^M),{x_r} = {T^{ - 1}}(w_{tgt}^M) xadv=T1(wclnM),xr=T1(wtgtM)
  3. 信息保留属性:由于DWI和IDWT的可逆性, ( w c l n M , w t g t M ) (w_{cln }^M, w_{tgt}^M) (wclnM,wtgtM)可以被保存在 ( x a d v , x r ) ({x_{adv}}, {x_r}) (xadv,xr) ( w c l n i − 1 , w t g t i − 1 ) (w_{cln }^{i - 1},w_{tgt}^{i - 1}) (wclni1,wtgti1)可以被保存在 ( w c ln ⁡ i , w t g t i ) (w_{c\ln }^{i },w_{tgt}^{i}) (wclni,wtgti)
    在这里插入图片描述
    IIEM是完全可逆,输出图像 ( x a d v , x r ) ({x_{adv}},{x_r}) (xadv,xr)和输入图像 ( x c l n , x t g t ) ({x_{cln}},{x_tgt}) (xcln,xtgt)包含相同的信息。他们之间的联系可表示如下:
    在这里插入图片描述
    σ \sigma σ表示干净图像上丢弃的信息, δ \delta δ表示添加到干净图像上目标图像的判别信息。

目标图像选择和学习(Target image selection and learning)

  1. 选取最高置信类的图像:选取最高置信的图像作为目标图像可能包含大量目标类的无关信息,例如背景纹理和其他的类的信息。这将会影响攻击成功率和寻优过程;
  2. 通用对抗扰动:作者沿用该方法,利用优化后的通用对抗摄动作为目标图像,加快收敛速度;
  3. 目标图像学习模块:该模块学习分类器引导的目标图像,而不是使用固定的图像作为目标图像。目标图像被设置为一个可学习的变量,该变量用一个恒定的图像初始化(即所有像素设置为0.5),然后根据攻击分类器的梯度进行更新。这样,自适应生成的目标图像可以嵌入目标类的更多判别信息,从而辅助生成对抗样例。

学习细节

整个网络的总体损失定义如下:
在这里插入图片描述
L a d v {\mathcal{L}_{adv}} Ladv表示对抗损失用于定位正确的优化方向和加速收敛速度,
![在这里插入图片描述](https://img-blog.csdnimg.cn/b62ee37afad6493dbf9467356ba72276.pn

L r e c {\mathcal{L}_{rec}} Lrec表示重构损失,用于约束对抗图像和良性图像相似,同时将修改主要应用于高频和不易察觉的内容,从而生成不易被察觉的对抗样本:
在这里插入图片描述

实验:

  • 数据集: ImageNet-1K
  • 基准:PGD,CW, Drop, PerC-AL,SSAH
  • 指标:感知性、攻击能力
  • 受害者模型:ResNet50
  • 感知性评估+目标攻击性能评估+鲁棒性评估(JPEG、bit-depth reduction、NRP and NRP_resG)+消融实验

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

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

相关文章

调整数组使奇数全部都位于偶数前面

题目内容: 输入一个整数数组,实现一个函数, 来调整该数组中数字的顺序使得数组中所有的奇数位于数组的前半部分, 所有偶数位于数组的后半部分。 题目思路: 将奇数部分放在前半部分,偶数部分放在后半部分&am…

excel中定位条件,excel中有哪些数据类型、excel常见错误值、查找与替换

一、如何定位条件 操作步骤:开始 - 查找和选择 - 定位条件(ctrl G 或 F5) 注:如果F5不可用,可能是这个快捷键被占用了 案例:使用定位条件选择取余中空单元格,填入100,按组合键ct…

Java算法_ 验证二叉搜索树(LeetCode_Hot100)

题目描述: 给你一个二叉树的根节点 ,判断其是否是一个有效的二叉搜索树。root 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。 节点的右子树只包含 大于 当前节点的数。 所有左子树和右子树自身必须也是二叉搜索树。 获得…

【Maven教程】(一)入门介绍篇:Maven基础概念与其他构建工具:理解构建过程与Maven的多重作用,以及与敏捷开发的关系 ~

Maven入门介绍篇 1️⃣ 基础概念1.1 构建1.2 maven对构建的支持1.3 Maven的其他作用 2️⃣ 其他构建工具2.1 IDE2.2 Make2.3 Ant2.4 Jenkins 3️⃣ Maven与敏捷开发🌾 总结 1️⃣ 基础概念 "Maven"可以翻译为 “知识的积累者” 或 “专家”。这个词源于波…

⛳ Docker - Centos 安装配置

目录 ⛳ Docker - Centos 安装配置🏭 Docker 安装:📢 一、安装依赖包💬 二、添加 Docker 下载源地址🐾 三、更新yum缓存👣 四、安装Docker💻 五、启动Docker🎁 六、查看Docker状态和…

MAC环境,在IDEA执行报错java: -source 1.5 中不支持 diamond 运算符

Error:(41, 51) java: -source 1.5 中不支持 diamond 运算符 (请使用 -source 7 或更高版本以启用 diamond 运算符) 进入设置 修改java版本 pom文件中加入 <plugin><groupId>org.apache.maven.plugins</groupId><artifactId>maven-compiler-plugin&l…

图像去雨-雨线清除-图像处理-(计算机作业附代码)

背景 多年来&#xff0c;图像去雨已经被广泛研究&#xff0c;使用传统方法和基于学习的方法。然而&#xff0c;传统方法如高斯混合模型和字典学习方法耗时&#xff0c;并且无法很好地处理受到严重雨滴影响的图像块。 算法 通过考虑雨滴条状特性和角度分布&#xff0c;这个问…

echart 3d立体颜色渐变柱状图

如果可以实现记得点赞分享&#xff0c;谢谢老铁&#xff5e; 1.需求描述 根据业务需求将不同的法律法规&#xff0c;展示不同的3d立体渐变柱状图。 2.先看下效果图 3. 确定三面的颜色&#xff0c;这里我是自定义的颜色 // 右面生成颜色const rightColorArr ref(["#79D…

java forEach中不能使用break和continue的原因

1.首先了解break和continue的使用范围和作用 1.1使用范围 break适用范围&#xff1a;只能用于switch或者是循环语句中。当然可以用于增强for循环。 continue适用范围: 用于循环语句中。 1.2作用 break: 1. break用于switch语句的作用是结束一个switch语句。 2. break用于循…

Apache Dubbo 云原生可观测性的探索与实践

作者&#xff1a;宋小生 - 平安壹钱包中间件资深工程师 Dubbo3 可观测能力速览 Apache Dubbo3 在云原生可观测性方面完成重磅升级&#xff0c;使用 Dubbo3 最新版本&#xff0c;你只需要引入 dubbo-spring-boot-observability-starter 依赖&#xff0c;微服务集群即原生具备以…

Uniapp连接蓝牙设备

一、效果图 二、流程图 三、实现 UI <uni-list><uni-list :border="true"><!-- 显示圆形头像 -->

【Java 动态数据统计图】动态数据统计思路案例(动态,排序,数组)四(116)

需求&#xff1a;&#xff1a;前端根据后端的返回数据&#xff1a;画统计图&#xff1b; 1.动态获取地域数据以及数据中的平均值&#xff0c;按照平均值降序排序&#xff1b; 说明&#xff1a; X轴是动态的&#xff0c;有对应区域数据则展示&#xff1b; X轴 区域数据降序排序…