《A data independent approach to generate adversarial patches》论文分享(侵删)

news2024/10/6 14:37:08

原文链接:A data independent approach to generate adversarial patches | Machine Vision and Applications

author={Xingyu Zhou and Zhisong Pan and Yexin Duan and Jin Zhang and Shuaihui Wang},

一、介绍

在图像识别领域,与数字域中的攻击相比,对抗性扰动在物理世界中攻击时遇到更多挑战:

(1)数字世界中的扰动可能非常小,由于传感器的不完善,相机不可能感知到它们。

(2)由许多当前算法产生的扰动是依赖于图像的。如果监控摄像头前的图像发生变化,攻击者需要立即产生相应的新扰动,这在物理攻击中很难实现。

(3)受扰动的图像难以在监控摄像机的视野中保持精确的距离和角度,这要求扰动对各种变换(例如旋转或缩放)和位置具有鲁棒性。

深度神经网络容易受到对抗性示例的影响,即,精心扰动的输入,旨在误导网络在推理时间。最近,对抗补丁,与扰动仅限于一个小的和局部的补丁,出现了在现实世界中的攻击,其容易获得。然而,现有的攻击策略需要在其上训练深度神经网络的训练数据,这使得它们不适合实际攻击,因为攻击者获得训练数据是不合理的。

为了解决这些缺点,我们提出了一种新的数据独立的方法来制作对抗补丁(DiAP)。DiAP的目标是生成一个对抗性补丁,可以在大多数图像上欺骗目标模型,而无需任何关于数据分布的知识。受GD-UAP [14]的启发,DiAP通过欺骗深度神经网络学习的特征来执行非目标攻击。换句话说,我们将其公式化为一个优化问题来计算非目标对抗补丁,它可以欺骗在深度神经网络的每一层上学习的特征,并最终将其错误分类为对抗示例。在生成非目标对抗补丁后,DiAP将其作为重要的背景项,以帮助攻击者提取目标类的特征,从而制作目标对抗补丁。实验结果表明,DiAP生成的对抗补丁具有较强的攻击能力.特别是,通过从非目标补丁中提取关于训练数据的模糊信息,DiAP在黑盒攻击场景中的性能优于最先进的攻击方法。

二、补充

对抗补丁下的对抗扰动:该模型被限制在一个小区域内,可以放置在输入图像上的任何地方。这种攻击基于这样一种假设,即机器学习模型的运行无需人工验证每个输入,因此恶意攻击者可能不关心其攻击的不可感知性。此外,即使人类能够注意到对抗性补丁,他们也可能将其视为一种艺术形式,而不是攻击深度神经网络的某种方式。

对抗补丁(GoogleAP):这些对抗补丁可以打印,添加到任何场景,拍照,并呈现给深度神经网络。即使补丁很小,深度神经网络也无法识别场景中的真实的对象并报告错误的类。对抗补丁是图像独立的,对于旋转和缩放是鲁棒的,可以放置在深度神经网络的视野内的任何地方,并使深度神经网络输出目标类。

三、针对非目标攻击的DiAP

在没有训练数据的情况下,我们欺骗在深度神经网络的各个层学习的特征,最终制作非目标对抗补丁pnt。为了实现这一目标,我们引入了伪激活损失的变体。特别地,训练非目标补丁PNT以优化伪激活目标函数

其中L是图像中的位置上的分布,并且T是补丁的变换上的分布。Iz是所有像素的RGB =[0,0,0]的背景图像。Li(A(pnt,Iz,l,t))是当图像A(pnt,Iz,l,t)被馈送到网络f时在层i处的输出张量。K是f中使A(pnt,Iz,l,t)引起的输出最大化的层数。所提出的目标计算产品的输出幅度在所有的各个层。注意,背景图像Iz的RGB值都为零,这不会误导深度神经网络各层提取的特征。因此,网络提取的错误特征实际上是由非目标对抗补丁pnt引起的。

我们希望补丁pnt在所有层上引起尽可能多的强干扰,以欺骗多层提取的特征并攻击网络,即等式中较大的E [·]。(2)PNT引起的污染越大。在训练过程中,补丁被转换,然后数字地插入到背景图像Iz上的随机位置上,并且我们优化Eq.(2)没有任何训练数据。

四、实验1

我们从三个方面对攻击进行了测试:(1)WhiteboxSingleModel攻击在单个模型上训练和评估单个补丁,并在上述模型上重复该过程。(2)白盒包围攻击在五个模型中联合训练单个补丁,然后通过平均所有这些模型的胜率来评估补丁。(3)黑箱攻击类似于leave one方法,在四个ImageNet模型上联合训练一个补丁,然后在第五个模型上评估黑箱攻击。

我们选择了13个缩放参数,即从1%到10%等间隔的5个点和从10%到50%等间隔的8个点。旋转角度限制在[− 45°,45 °]。Inception—V3针对白盒单模型攻击生成的补丁被重新缩放以覆盖10%的输入图像,然后随机旋转并放置在不同测试图像的随机位置。

DiAP生成的非针对性对抗补丁的攻击成功率。图中的每个点都是通过平均1000个对抗性示例的结果来计算的,这些示例是通过将补丁应用于这些图像中随机位置的测试图像来制作的。

显示了为非目标攻击生成的一些补丁。这些补丁似乎都包含了很多小的圆形图案,并表现出一定的对称性。我们研究了由图4所示的对抗补丁制作的对抗样本的估计标签。当斑块覆盖10%的测试图像时,97.1%的与斑块(a)叠加的对抗性示例被分类为气泡,60.9%的被斑块(b)扰动的图像被识别为作为盐瓶或瓢虫,55.8%的图像被斑片(c)干扰后被识别为气泡或风车。通过优化Eq.(2)DiAP倾向于构造具有圆形模式的补丁,以增强对各种变换的鲁棒性,因此相应的对抗性示例更有可能被归类为圆形对象。

五、DiAP用于定向攻击

由Eq.(2)可以有效地攻击网络,并导致网络将许多对抗性示例识别为主导标签,这意味着补丁可能包含有关训练数据的一些信息。我们认为,这种先验知识有助于在没有训练数据的情况下生成目标补丁pt。为了制作这样一个PT,我们针对以下目标进行优化

我们将A(pnt,Iz,l,t)作为背景图像。在训练期间,非目标块pnt被随机缩放和旋转,然后被数字地插入到图像Iz上的随机位置上以形成背景图像Int。接下来,目标块pt也被随机变换并数字地插入到背景图像Int上的随机位置上。

使用A(pnt,Iz,l,t)作为背景图像似乎很奇怪,因为它在等式2中表示。(2)训练非目标攻击补丁pnt。然而,如果我们意识到pnt可能包含关于训练数据的信息,尽管pnt不属于训练数据,这种方法是合理的。我们寻求一种有效的方法来使用非目标补丁pnt中隐含的信息(即优化方程。(4)),使得图像A(pt,Int,l,t)被评估为目标标签Pcky。最后,被目标补丁pt覆盖的对抗样本A(pt,x,l,t)被网络误分类为攻击。

六、实验2

显示了针对性对抗补丁的攻击成功率,目标类是toaster。当补丁占图像大小的10%时,DiAP仍然可以实现约80%的攻击成功率。注意到DiAP完全不知道有关训练数据的任何信息,而GoogleAP使用训练示例进行优化,这个结果似乎违反直觉。我们假设,在不知道被攻击模型的结构(黑盒场景)的情况下,Int提供的关于训练数据的模糊信息使DiAP更具一般性,从而导致比GoogleAP更高的攻击成功率。这表明,当攻击者不熟悉被攻击模型时,关于训练数据的模糊信息可能比准确的示例知识更有利于生成攻击补丁。

我们随机选择其他8个类别作为目标标签(例如香蕉,水母),实验结果如图所示。对抗补丁由DiAP生成。当补丁占据输入图像面积的20%时,对于所有目标类,两种白盒攻击的成功率都超过80%。攻击成功率与目标类别之间并没有严格的对应关系。

DiAP在黑盒场景下的攻击性能尤其值得注意,这意味着恶意攻击者可以在不知道模型结构、预训练参数和训练数据集的情况下攻击深度神经网络。图显示了当缩放参数为10%时,黑盒攻击场景中的攻击成功率。当补丁占测试图像面积的10%时,我们检验了攻击能力。在大多数情况下,DiAP的性能优于GoogleAP,DiAP的平均攻击成功率为44.95%,而GoogleAP为41.15%。这表明DiAP生成的补丁具有更好的可移植性,更适合黑盒攻击。同时,随机选取8幅真实的图像进行比较,每个目标类一幅。而对真实的图片的攻击成功率均不到10%,平均只有5. 25%。这些结果证实了我们的对抗补丁,而不是目标标签的真实的图像,可以攻击深度神经网络。

七、结论

在本文中,我们提出了一种数据独立的方法来生成对抗补丁。通过污染被攻击网络的每一层提取的特征,DiAP生成非目标对抗补丁。然后,结合非目标补丁所隐含的信息,DiAP提取目标类的特征,以制作有针对性的对抗补丁。在生成补丁的过程中,DiAP完全不使用任何训练数据,有利于在真实的物理场景中进行攻击。在数字世界和物理世界的白盒和黑盒环境下的大量实验结果表明,DiAP具有强大的攻击能力,并达到了最先进的性能。此外,DiAP在黑盒攻击中优于现有的方法,这意味着当网络结构未知时,模糊的示例信息可能比真实的示例更有助于攻击。

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

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

相关文章

ZigBee设备入网流程抓包分析(以飞利浦灯泡为例)

1.第一步,网关打开入网许可,广播Pjoin 2.第二步,设备开始扫网,发送Beacon Request 3.第三步,网关收到Beacon Request请求后,应答Beacon数据帧 4.收到可入网的Beacon帧后,发送关联请求&#xff0…

Linux提权--内核漏洞--web用户提权(脏牛)本地提权(脏管道)

免责声明:本文仅做技术交流与学习... 目录 Linux-内核漏洞Web用户提权-探针&利用-脏牛dcow nmap扫描目标IP及端口 导入脚本,进行探针 通过MSF发现目标机器存在脏牛漏洞 ---上传信息搜集的文件,查找漏洞,利用漏洞,继续上传EXP. --密码改了,再用xshell连一下就行了. …

实物仿真平台设计方案:927-8路GMSL视频注入回灌的自动驾驶半实物仿真平台

8路GMSL视频注入回灌的自动驾驶半实物仿真平台 一、平台介绍 产品基于8路GMSL视频注入回灌的自动驾驶半实物仿真平台旨在提高实验室及研究生院师生在基础软件层开发、计算机视觉和深度学习方面的专业知识学习和实践能力,为师生提供一个稳定软件开发和多精度框…

智慧校园的主要功能是什么

随着信息化的发展,智慧校园的应用已经屡见不鲜。智慧校园是新技术与新科技落地的典型案例。智慧校园完善了校园信息化建设体系,推动了教育水平的提升,以下是智慧校园实现的几个比较典型的功能: 1.数字化办公 毋庸置疑&#xff0…

【定制化】在Android平台实现自定义的程序启动页

特别说明:以下仅适用于Android平台。 实现原理 创建安卓端自定义的Activity禁用UnityPlayerActivity的启动Logo改用自定义Activity 示例效果 参考简单步骤或详细步骤都可实现。 自定义的启动动画,效果如下: 简单步骤 三步操作实现启动动画…

解决wangEditor使用keep-alive缓存后,调用editor.cmd.do()失败

前提:wangeditor版本:4.7.11 vue版本:vue2 问题:在使用wangeditor富文本编辑器时,需求需要通过点击一个按钮,手动插入定义好的内容,所以使用了 editor.cmd.do(insertHTML, ....) 方法新增…

xilinx xdma drive 传输8MB以上数据受限的问题

当传输超过8 MB数据时报错error code1359, #define XDMA_MAX_TRANSFER_SIZE (8UL * 1024UL * 1024UL) 可以修改成: #define XDMA_MAX_TRANSFER_SIZE (80UL * 1024UL * 1024UL) VS2019 WDK环境的搭建 先准备好VS WDK的驱动开发环境。需要下载VS、SD…

【无标获取S4与ECC的具体差异的方法题】

首先我们需要对ECC vs S4的差异这个课题要有一个深刻的理解,这不是一个简单并能准确说清楚的课题。 我们需要结合实际项目的具体情况去回答这个问题,因为这个问题本身是没有标准答案的。 首先要了解SAP本身ERP产品线的发展概况,其次我们要…

LeetCode---396周赛

题目列表 3136. 有效单词 3137. K 周期字符串需要的最少操作次数 3138. 同位字符串连接的最小长度 3139. 使数组中所有元素相等的最小开销 一、有效单词 按照题目要求,统计个数,看是否符合条件即可,代码如下 class Solution { public:b…

conan2 基础入门(03)-使用(msvc为例)

conan2 基础入门(03)-使用(msvc为例) 文章目录 conan2 基础入门(03)-使用(msvc为例)⭐准备生成profile文件预备文件和Code ⭐使用指令预览正确执行结果可能出现的问题 ⭐具体讲解conanconanfile.txt执行 install cmakeCMakeLists.txt生成项目构建 END ⭐准备 在阅读和学习本文…

Springboot集成Netflix-ribbon、Enreka实现负载均衡-12

Netflix Ribbon简介 Netflix Ribbon是Netflix发布的云中间层服务开源项目,主要功能是提供客户端的软件负载均衡算法,将Netflix的中间层服务连接在一起。 具体来说,Ribbon是一个客户端负载均衡器,可以在配置文件中列出所有的服务…

力扣例题(循环队列)

链接 . - 力扣(LeetCode) 描述 思路 我们使用数组来创建循环队列 数组的大小我们就额外对开辟一块空间 MyCircularQueue(k) 开辟一个结构体,存放队列的相关数据 分别为size,数组指针_a,起始位置head,结束位置tail 注意:我们…

【harbor】harbor的搭建与使用

harbor的搭建与使用 文章目录 harbor的搭建与使用1. harbor的下载2. 创建ssl证书3.harbor的配置3. docker修改4.启动harbor5.使用docker总结 1. harbor的下载 harbor仓库地址:https://github.com/goharbor/harbor harbor主要是go语言写的,但是我们dock…

Docker停止不了

报错信息 意思是,docker.socket可能也会把docker服务启动起来 解决 检查服务状态 systemctl status dockersystemctl is-enabled docker停止docker.socket systemctl stop docker.socket停止docker systemctl stop docker知识扩展 安装了docker后,…

计算机字符集产生的历史与乱码

你好,我是 shengjk1,多年大厂经验,努力构建 通俗易懂的、好玩的编程语言教程。 欢迎关注!你会有如下收益: 了解大厂经验拥有和大厂相匹配的技术等 希望看什么,评论或者私信告诉我! 文章目录 一…

python数据分析——pandas数据结构2

参考资料:活用pandas库 导入基础数据 # 导入库 import pandas as pd # 读取数据集 dfpd.read_csv(r"..\data\scientists.csv") df.head() 1、DataFrame DataFrame是Pandas中最常见的对象。可以把它看作python存储电子表格式数据的方式。Series数据结构…

PMOS和NMOS

一. MOS管简介 MOS管是场效应管的一种,主要有两种结构形式:N沟道和P沟道,又根据场效应原理的不同,分为耗尽型(当栅压为零时有较大漏极电流)和增强型(当栅压为零,漏极电流也为零&…

Jenkins 备份恢复插件 ThinBackup

系统环境: Jenkins 版本:2.213 一、简介 在部署完 Jenkins 后首先要准备的就是数据备份问题,尤其是在生产环境下的 Jenkins,如果数据丢失很可能导致项目上线和开发时间受到影响,所以备份数据很重要。还好,…

[算法][差分数组][leetcode]1094. 拼车

地址&#xff1a; https://leetcode.cn/problems/car-pooling/description/ 解法一&#xff1a;暴力解法 class Solution {public boolean carPooling(int[][] trips, int capacity) {//特殊条件判断if(nulltrips||capacity<0){return false;}int [] d new int[1001];//暴…

VTK官方例子

VTK官方例子 vtkMutableDirectedGraph #!/usr/bin/env python# noinspection PyUnresolvedReferences import vtkmodules.vtkInteractionStyle # noinspection PyUnresolvedReferences import vtkmodules.vtkRenderingOpenGL2 from vtkmodules.vtkCommonColor import vtkName…