One pixel 对抗攻击_学习笔记

2023-05-16

前言

本篇博客出于学习交流目的,主要是用来记录自己学习中遇到的问题和心路历程,方便之后回顾。过程中可能引用其他大牛的博客,文末会给出相应链接,侵删!


One pixel 对抗攻击算法
特点:黑盒攻击,只改变一个像素点即可实现攻击
论文原文:One pixel attack for fooling deep neural networks

之前介绍的几篇对抗攻击算法几乎都是在整个图像所有像素点上做微小的扰动,以达到欺骗模型的目的,而这篇文章的思想是只改变较少的像素点,甚至只改变一个像素点就能获得较好的攻击效果。

正文

考虑极端攻击情况,只修改一个像素点,对图像几何特征和DNN模型在高维的行为有了新的洞察。主要扰动算法差分进化算法。

相较其他算法该算法具有以下优点
有效性: CIFAR-10数据集在三个常见DNN模型上无目标攻击欺骗率达68.71%,72.85%,63.53%,并且平均每个图像可扰动成1.9,2.3,1.7个其他类样本。ImageNet 数据集在BVLC AlexNet模型下无目标攻击有效性为41.22%。
半黑盒攻击:只需要返回黑盒的类标概率而不用网络的内部参数。
灵活性:可以攻击那些不可微或梯度难以计算的模型。

主要出发点
自然图像邻的分析:如通用扰动加一些小的变化可获得自然图像周围球形范围内的对抗样本,而只修改很少的像素点可以看做是对DNN高维空间切割成非常低维的输入空间。
可观察性的一种评估指标:没人能够保证前人的算法生成的扰动就一定不可观察,而最简单的方法就是限制修改的像素点,修改的越少,那么被看出来的概率也越低,并且在实际中,效果确实很好。

算法

问题描述


对抗样本生成形式化为含有限制条件的优化问题。
输入 n n 维图像x=(x1,,xn),图像每个像素看成是向量的一个分量;
f f ,分类器;
t,类别;
ft(x) f t ( x ) ,图像 x x 属于类别 t t 的概率;
e(x)=(e1,,en),对抗扰动向量;
L L ,最大修改器限制;
公式如下:

maximizee(x)fadv(x+e(x))

subjecttoe(x)L s u b j e c t t o ‖ e ( x ) ‖ ≤ L

单像素扰动的问题可以分解为两部分:1,扰动哪个扰动;2,扰动多少;那么问题就可以简化为
maximizee(x)fadv(x+e(x)) m a x i m i z e e ( x ) ∗ f a d v ( x + e ( x ) )
subjecttoe(x)0d s u b j e c t t o ‖ e ( x ) ‖ 0 ≤ d

单像素攻击,即 d=1 d = 1
注:传统的改变整个输入图像的方法控制尽量小的扰动,而这篇算法则是控制扰动的像素个数,对于修改的幅度则不作限制。
这里写图片描述
以原文中的图例解释,假如我们的输入是3像素,而我们的攻击的单像素的,那么我们的输入空间被切割为三根红黑线;如果攻击是两像素,则攻击输入空间是蓝色的平面部分,以此类推更多维的攻击;

差分进化算法


差分进化算法是很流行的解决多模优化问题的优化算法,一种常见的遗传算法,主要区别是变异向量是由父代差分向量生成。
优势:
高概率找到全局最优解;
不用计算梯度,需要更少的信息;
简易;

算法与参数设置


将扰动以数组形式,候选解需固定扰动像素点的数目。单像素攻击,以一个5元组表示,分别是x-y轴坐标,以及RGB各通道的扰动值。初始候选解为400,每次生成400候选后代解,依以下公式:

xi(g+1)=xr1(g)+F(xr2(g)+xr3(g)), x i ( g + 1 ) = x r 1 ( g ) + F ( x r 2 ( g ) + x r 3 ( g ) ) ,
r1r2r3 r 1 ≠ r 2 ≠ r 3

xi x i 是一个候选解, r1r2r3 r 1 , r 2 , r 3 是随机数, F F 是比例参数设为0.5,g是当前代。生成子代时,每个候选解将根据人口指数与相对应的父亲竞争,获胜者将在下一次迭代中生存下来。最大迭代次数设为100,或者,满足对于某些测试集的指定百分比时提前停止。初始化时,x-y坐标,CIFAR-10数据集用 U(1,32) U ( 1 , 32 ) 均匀分布,ImageNet数据集用 U(1,227) U ( 1 , 227 ) 均匀分布;各通道颜色幅度用高斯分布 N(µ=128,σ=127) N ( µ = 128 , σ = 127 )

实验结果

原文做了大量的实验,在不同数据集和限制不同像素点条件下,具体看原文吧。

代码链接:https://github.com/Hyperparticle/one-pixel-attack-keras

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

One pixel 对抗攻击_学习笔记 的相关文章

  • Disabled PicPipeline: ImagesPipeline requires installing Pillow 4.0.0 or later

    目录 一 scrapy是什么 二 问题以及原因 三 解决办法 1 确保系统已经安装了 Pillow 库 2 安装 Pillow 库 3 在项目根目录中添加 Pillow 的 pth 文件 一 scrapy是什么 Scrapy是一个用于从网站
  • ERROR 1129 (HY000): Host ‘192.168.0.1‘ is blocked because of many connection errors; unblock with ‘m

    MySql远程链接报错 问题 xff1a mysql u root h 192 168 0 1 p Enter password ERROR 1129 HY000 Host 39 192 168 0 1 39 is blocked beca
  • JVM虚拟机详解

    一 JVM简介 JVM是Java Virtual Machine Java虚拟机 的缩写 简单来说JVM是用来解析和运行Java程序的 虚拟机是一种抽象化的计算机 通过在实际的计算机上仿真模拟各种计算机功能来实现的 Java虚拟机有自己完善
  • 云计算OpenStack详解

    一 OpenStack简介 1 OpenStack发展历程 2002年 美国著名的电商公司亚马逊 Amazon 干了一件 不务正业 的事 他们向客户推出了一项全新的业务 包括存储空间 计算能力等资源服务的Web nbsp Service 这
  • Linux虚拟化网络之vlan配置

    问题描述 Linux主机划分两个vlan 服务器server1的物理网卡的IP地址为1 1 1 1 24 服务器server2的物理网卡的IP地址为1 1 1 2 24 物理网卡下要虚拟化出来两个Vlan子接口 vlan10中主机的IP地址
  • 部署SDN控制器对接OVS网元实现转控分离实战 附ODL控制器

    1 云计算对网络的需求 1 多租户网络隔离 云中包含多个租户 不同租户可以自己设计自己的内部网络 172 16 0 0 10 0 0 192 168 0 存在安全隐患 要让不同租户网络要分隔开 nbsp 不同租户的网络需要互相二层隔离 三层
  • Python 数据采集、清洗、整理、分析以及可视化实战

    一 数据分析思路 大概可以分为下面这几个步骤 数据采集 原始数据完整性检查 数据清洗 整理 从不同角度对数据进行分析 数据可视化 总结 主要使用 Python 来进行分析 数据采集 主要涉及的 python 库包括 requests Bea
  • ERROR: torch-1.6.0+cu101-cp37-cp37m-win_amd64.whl is not a supported wheel on this platform.

    目的 xff1a 使用混合精度训练模型 方法 xff1a 最新版pytorch1 6已封装进混合量化的模块 xff0c 只需几句代码就可以提高batch size 速度会有非常大的提升 安装pytorch xff1a pip install
  • Clash开启系统代理System proxy后无效,无流量

    在注册表目录 xff1a HKEY LOCAL MACHINE SOFTWARE Policies Microsoft Windows CurrentVersion Internet Settings 设置ProxySettingsPerU
  • Proximal Policy Optimization(PPO)算法原理及实现!

    Proximal Policy Optimization PPO 算法原理及实现 xff01 这两天看了一下李宏毅老师的强化学习课程的前两讲 xff0c 主要介绍了Policy Gradient算法和Proximal Policy Opti
  • 树莓派4b ubuntu 20 设置阿里源

    前言 设置国内源其实很简单 xff0c 但是由于我是下载的 64位 操作系统 xff0c 并且树莓派是arm架构 xff0c 所以有一点不同 执行 lsb release a 查看发行版本 ubuntu 64 ubuntu etc netp
  • CAS登录流程

    访问 http localhost analysis 请求会被ngixn如下配置拦截 location analysis root D work dist index index html index htm try files uri u
  • 解决centos7 sshd端口修改后,重启服务器sshd无法连接的问题

    针对centos7的变化 xff0c 修改sshd端口需要修改 etc ssh sshd config selinux 防火墙 1 修改 etc ssh sshd config 执行命令 xff1a vi etc ssh sshd conf
  • osmWebWizard.py: error: typemap file “E:\SUMO\tools\data\typemap\osmPolyconvert.typ.xml“ not found

    在使用sumo的时候 xff0c 根据官方文档 xff08 OSMWebWizard SUMO Documentation dlr de xff09 显示 xff0c 在tools目录下使用python osmWebWizard py 来生
  • 内核与驱动_08_键盘驱动原理及代码

    文章目录 技术原理Windows中从击键到内核流程 键盘硬件原理键盘过滤的框架搭建应用设备扩展键盘过滤模块的动态卸载键盘过滤的请求处理通常的处理 PNP的处理读的处理读完成的处理从请求中打印出按键信息从缓冲区中获得KEYBOARD INPU
  • LCD 12864B V2.0的使用

    内置ST7920控制器和中文字库的LCD12864的使用 前言 大家好 xff0c 我是小灬贱 今天我给大家带来LCD12864的使用方法以及我的一些经验 文章里面如有不妥之处或者表达不清晰的地方还请各位多多指教 可以在文下评论或者私信我
  • Unity:内存管理、GC优化

    目录 一 GC简介 1 堆内存分配和回收机制 2 垃圾回收时的操作 3 何时会触发垃圾回收 xff1f 4 GC操作带来的问题 二 GC优化 1 降低GC影响的方法 2 减少内存垃圾的数量 3 造成不必要的堆内存分配的因素 1 字符串 2
  • C# 常用的文件IO操作

    目录 一 IO流 1 文件夹操作 Directory类 2 文件操作 File类 3 路径操作 Path类 4 读取文件 StreamReader类 5 写入文件 StreamWriter类 二 动态链接库kernel32 1 写入文件 2
  • OutLine源码解析 -- 为什么要尽量避免使用OutLine

    相信很多人在刚入职Unity的时候都被告诫过尽量避免使用OutLine xff0c 只知道它很费性能 xff0c 但是很多人并不知道它为什么很费性能 今天通过源码来探索一下 首先看一下OutLine cs里的源码 public overri
  • Lua高级应用

    一 lua数据结构及内存占用分析 1 基础数据结构 lua的基本数据表示是type 43 union 的方式 xff0c 根据不同类型映射到union的不同结构上面 xff0c 统一的表示结构lua TValue xff1a typedef

随机推荐

  • VirtualBox虚拟机安装CentOS7.6后无法ssh远程连接虚拟机

    问题如题所述 安装完 xff0c 一般都是使用ip addr查看虚拟机IP后通过远程工具来尝试连接 虚拟机IP 然后会发现通过此IP无法连接 解决办法 xff1a 修改VirtualBox的网络配置 1 查看VirtualBox对应网卡的I
  • UGUI实现text渐变色(通过自定义富文本标记实现)

    之前分享过一个通过添加组件实现渐变色的文章 xff0c 但是通过组件实现有一个弊端 xff0c 他只能设置整个文本渐变 xff0c 不能只设置一段文字渐变 今天分享一个通过正则匹配自定义的富文本标记来实现渐变色的方法 xff0c 这样的好处
  • 如何实现自定义绘制Winform的TreeView并且实现多选

    自定义绘制背景 xff0c 节点字体 xff0c 树节点后面加按钮 xff0c 自定义展开节点样式 效果如下 xff1a 同时选中节点5和节点6下的Tree 先设置TreeView的DrawMode 61 System Windows Fo
  • RSTP协议原理与配置整——STP的不足

    STP协议虽然能够解决环路问题 xff0c 但是由于网络拓扑收敛较慢 xff0c 影响了用户通信质量 xff0c 而且如果网络中的拓扑结构频繁变化 xff0c 网络也会随之频繁失去连通性 xff0c 从而导致用户通信频繁中断 xff0c 这
  • 双重加锁单例模式剖析

    话不多说 xff0c 首先上代码 xff01 xff01 xff01 span class token keyword public span span class token keyword class span span class t
  • Mybatis plus 批量插入MetaObjectHandler无法生效问题

    目录 1 溯源 2 孽缘 3 发现 4 尝试 5 结果 6 吐槽 1 溯源 3年前当时Mybatis plus还没有那么火爆的时候 xff0c 当时在创业公司是遇到了 Mybatis plus xff0c 因为baseMapper也没有集成
  • springKafka 重试解决分布式事务

    目录 1 背景 1 1 名词解释 1 2 业务场景 1 3 kafka消息的优点和缺点 1 4 kafka客户端重试框架 2 使用 2 1 引入pom依赖 2 2 定义重试消息 xff0c 死信队列 2 3 业务执行异常处理 3 代码分析
  • 库存系统通用模型

    1 库存模型设计 一般通用库存模块包括 名称备注 基础数据模块 仓库 xff0c 物料 xff0c 等基础信息入库单据单据出库单据单据出入库流水记录 xff0c 锁帐等报表查询的一些信息库存核心库存数量 2 库存模型 3 模型详细介绍 这个
  • 【Linux命令学习4】查询文件内容的五个命令:☆cat、☆more、less、head、tail

    以root 用户家目录下的anaconda ks cfg文件做演示 以下命令都是在 root 64 localhost root超级用户家目录下运行 值得知道的翻页命令 按键功能enter 回车键 向下一行space 空格 向下一页b向上一
  • 关于windows无法启动VMware USB Arbitration Service 错误2 问题解决

    关于windows无法启动VMware USB Arbitration Service 错误2 问题解决 控制面板 gt 卸载程序 gt 右击VMware Workstation gt 更改 gt 下一步 gt 修复 等待修复完成重启即可
  • 场景识别论文阅读感想(初步)

    近日阅读了一篇cvpr上2016年关于场景识别的论文 xff0c 写了如下感想 The Cityscapes Dataset for Semantic Urban Scene Understanding 阅读感想 1 概述 对于城市道路的环
  • 一款能生成NC文件(雕刻路径文件)的 inkscape ,想必很多人都找不到能用的

    xfeff xfeff 点击链接加入群聊 雕刻机技术营 xff1a https jq qq com wv 61 1027 amp k 61 5c6j991 下载链接 https pan baidu com s 1IQ9A6CmcgVxxKL
  • 多目标优化_学习笔记(一)

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习多目标优化中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 REMARK xff1
  • 多目标优化_学习笔记(二)NSGA-II

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习多目标优化中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 REMARK xff1
  • 多目标优化_学习笔记(三)MOEA/D

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习多目标优化中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 REMARK xff1
  • VNCViewer实现与WIN端文本复制粘贴

    主机系统 xff1a Win10 View端系统 xff1a Ubuntu 16 04 VNCViewer xff1a 6 17 今天踩的第二个坑 xff0c 主要还是因为懒 xff0c 有时候懒得打那么多字 xff0c 就想着和虚拟机一用
  • FGSM(Fast Gradient Sign Method)_学习笔记+代码实现

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 FGSM xff08 Fast
  • DeepFool对抗算法_学习笔记

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 DeepFool算法 特点 xf
  • 对抗样本黑箱攻击UPSET、ANGRI_学习笔记

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 DeepFool算法 特点 xf
  • One pixel 对抗攻击_学习笔记

    前言 本篇博客出于学习交流目的 xff0c 主要是用来记录自己学习中遇到的问题和心路历程 xff0c 方便之后回顾 过程中可能引用其他大牛的博客 xff0c 文末会给出相应链接 xff0c 侵删 xff01 One pixel 对抗攻击算法