SNN对抗攻击笔记
SNN对抗攻击笔记:
1. 解决SNN对抗攻击中脉冲与梯度数据格式不兼容性以及梯度消失问题:
- G2S Converter、Gradient Trigger[1]
2. 基于梯度的对抗攻击方式:
- FGSM[1-3]
- R-FGSM[3]
- I-FGSM[3]
- BIM[1]
- PGD[2]
3. 图像转化到脉冲序列的采样方式:
- Poisson事件生成过程[1-9]
4. SNN类型:
- SNN-conv(ANN-SNN Conversion)[2-7, 9]
- 采用的神经元模型
- IF神经元模型[2-7, 9]
- LIF神经元模型[2, 4]
- Trick
- 阈值平衡[2-5]
- 权重归一化[5, 9]
- 采用的神经元模型
- SNN-BP[1-4, 8]
- 替代梯度法:
- 分段常数函数(迭代LIF神经元模型)[1]

- 脉冲时间相关函数(IF/LIF神经元模型)[2, 4]

- 阈值相关函数(IF/LIF神经元模型)[3, 8]


5. 影响对抗攻击效果的因素分析:
- 损失函数、发放阈值(倒数第二层)[1]
- 输入量化、时间步骤数、泄漏因子[2]
6.对抗攻击类型:
- 白盒攻击、目标/非目标攻击[1]
- 白/黑盒攻击、非目标攻击(这里的黑盒攻击是由具有相同网络结构但不同初始化的ANN创建的)[2]
- 白/黑盒攻击、目标/非目标攻击[3]
7. SNN/ANN-crafted攻击的比较:
- 在独立攻击场景中,所有白盒攻击成功率都相当高[1]
- 利用ANN-crafted的对抗样本来欺骗SNN模型是非常困难的[1]
- 在黑盒设置下,ANN-crafted攻击比相应的SNN-crafted攻击强[2]
- 在白/黑盒设置中,SNN-crafted比ANN-crafted具有更强的攻击能力[3]
- 尽管在白盒设置中,SNN的精度下降要高于ANN,但SNN对黑盒攻击的抵抗力要比ANN高得多[3]
8. SNN/ANN健壮性的比较:
- 白盒攻击SNN模型比白盒攻击ANN模型需要更多的扰动,这反映了SNN模型具有更高的健壮性[1]
- 在白/黑盒攻击下,与SNN-BP网络的非脉冲对应以及SNN-conv网络相比,SNN-BP网络具有更强的健壮性[2]
- 对于白/黑盒攻击,SNN-BP比SNN-conv具有更强的健壮性[3]
9. SNN中神经元的选择:
- 在SNN(ANN)中每个卷积层、平均池化层和全连接层之后,都跟着LIF神经元(ReLU激活)[3]
- 为了避免负值,使用ReLU激活,然后用IF神经元替代ReLU激活[5-7]
10. SNN中池化的选择:
- SNN
- 在SNN中,激活是二进制的,执行最大池化将导致下一层的大量信息丢失[3-6]
- SNN-conv
- 将VGG的最大池化层用平均池化替代[2]
- 最大池化需要两层脉冲网络;在CNN中,空间最大池化被实现为在输入中的小图像邻域上获取最大输出值; 在SNN中,我们需要两层神经网络来实现此目的,同时需要横向抑制,然后合并在这些小的图像区域上;这种方法需要更多的神经元,并且由于增加的复杂性而可能导致准确性下降[7]
- 使用空间线性子采样代替空间最大池化;空间线性二次采样使用总和为1.0的均匀权重核将小图像邻域上的所有像素相加; 空间线性子采样函数可以轻松转换为脉冲域[7]
- 在这里,我们提出了一种简单的脉冲池化机制,其中输出单元包含门控函数,该函数仅允许最大发放神经元的脉冲通过,而丢弃其他神经元的脉冲;通过计算突触前发放率的估计,例如通过计算这些rate的实时或指数加权平均值,来控制门控函数;在实践中,我们发现了几种有效的方法,但是仅使用有限的脉冲响应滤波器(2x2的最大池化层)来控制门控函数以证明结果[9]
- SNN-BP
- 由于其简单性,我们使用平均池化; 在SNN的情况下,平均后会使用额外阈值以生成输出脉冲[8]
11. SNN中偏差的选择:
- SNN
- 不含偏差项,因为它们对阈值电压有间接影响,因此对SNN训练的收敛性也有间接影响[2, 4]
- SNN-conv
- 没有很好的方法来表示SNN中的偏差[5-7]
- 在脉冲网络中,可以简单地以相同符号的恒定输入电流作为偏差来实现[9]
- 可以用恒定rate的外部脉冲输入表示偏差,该rate与ANN偏差成正比,尽管如此,人们可能不得不反转脉冲的符号以解决负偏差[9]
- BN的ANN-SNN转换(将BN参数整合到之前层的权重和偏差中)[9]
- SNN-BP
- 去除所有卷积层和全连接层中的偏差[7]
12. SNN中正则器的选择
- SNN
- 在每个卷积层和全连接层之后,都跟着Dropout(0.2)[3]
- 除非后面跟着一个池化层,否则在每个ReLU/IF之后都会使用一个Dropout层[2, 4]
- 无偏差排除了Batch Normalization(BN)作为正则器使用的可能性[2, 4, 5]
- SNN-conv
- 对于VGG网络,除非有池化层紧随其后,否则在每个ReLU层之后都会使用一个Dropout层[5]
- 对于残差网络,我们仅对非等效并行路径上的ReLU使用Dropout,而在结合层处不使用[5]
- SNN-BP
- 我们使用SNN版本的Dropout技术,忽略单元的概率(p)等于0.2-0.25;请注意,与ANN相比,SNN前向传播的激活要少得多,因此SNN的最佳p值必须小于典型的ANN Dropout(p = 0.5)[8]
Reference:
[1] Liang L , Hu X , Deng L , et al. Exploring Adversarial Attack in Spiking Neural Networks with Spike-Compatible Gradient[J]. 2020.
[2] Sharmin S , Rathi N , Panda P , et al. Inherent Adversarial Robustness of Deep Spiking Neural Networks: Effects of Discrete Input Encoding and Non-Linear Activations[J]. 2020.
[3] Sharmin S , Panda P , Sarwar S S , et al. A Comprehensive Analysis on Adversarial Robustness of Spiking Neural Networks[J]. 2019.
[4] Rathi, N., Srinivasan, G., Panda, P., Roy, K.: Enabling deep spiking neural networks with hybrid conversion and spike timing dependent backpropagation. In:ICLR (2020).
[5] Abhronil Sengupta, Yuting Ye, RobertWang, Chiao Liu, and Kaushik Roy. Going deeper in spiking neural networks: Vgg and residual architectures. Frontiers in neuroscience, 13, 2019.
[6] Peter U Diehl, Daniel Neil, Jonathan Binas, Matthew Cook, Shih-Chii Liu, and Michael Pfeiffer. Fast-classifying, high-accuracy spiking deep networks through weight and threshold balancing. In 2015 International Joint Conference on Neural Networks (IJCNN), pp. 1–8. IEEE, 2015.
[7] Cao Y , Chen Y , Khosla D . Spiking Deep Convolutional Neural Networks for Energy-Efficient Object Recognition[J]. International Journal of Computer Vision, 2015, 113(1):54-66.
[8] Chankyu Lee, Syed Shakib Sarwar, Kaushik Roy, Enabling Spike-based Backpropagation in State-of-the-art Deep Neural Network Architectures, arXiv:1903.06379, 2019.
[9] B. Rueckauer, I.-A. Lungu, Y. Hu, M. Pfeiffer, and S.-C. Liu. Conversion of continuous-valued deep networks to efficient event-driven networks for image classification. Frontiers in neuroscience, 11:682, 2017.
SNN对抗攻击笔记的更多相关文章
- KDD 2018 | 最佳论文:首个面向Facebook、arXiv网络图类的对抗攻击研究
8 月 19 日至 23 日,数据挖掘顶会 KDD 2018 在英国伦敦举行,昨日大会公布了最佳论文等奖项.最佳论文来自慕尼黑工业大学的研究者,他们提出了针对图深度学习模型的对抗攻击方法,是首个在属性 ...
- 对抗攻击(一) FGSM
引言 在对抗样本综述(二)中,我们知道了几种著名的对抗攻击和对抗防御的方法.下面具体来看下几种对抗攻击是如何工作的.这篇文章介绍FGSM(Fast Gradient Sign Method). 预备知 ...
- QA 中的对抗攻击和防御
攻击 supporting facts 的修改:字符调换,替换词(用空格embedding或近同义词,变形词等) 还有针对question的攻击. 梯度下降,在embediing上做攻击,如何deco ...
- Yii防注入攻击笔记
网站表单有注入漏洞须对所有用户输入的内容进行个过滤和检查,可以使用正则表达式或者直接输入字符判断,大部分是只允许输入字母和数字的,其它字符度不允许:对于内容复杂表单的内容,应该对html和script ...
- Exploring Adversarial Attack in Spiking Neural Networks with Spike-Compatible Gradient
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! arXiv:2001.01587v1 [cs.NE] 1 Jan 2020 Abstract 脉冲神经网络(SNN)被广泛应用于神经形态设 ...
- Inherent Adversarial Robustness of Deep Spiking Neural Networks: Effects of Discrete Input Encoding and Non-Linear Activations
郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! arXiv:2003.10399v2 [cs.CV] 23 Jul 2020 ECCV 2020 1 https://github.com ...
- 深度学习课程笔记(十二) Matrix Capsule
深度学习课程笔记(十二) Matrix Capsule with EM Routing 2018-02-02 21:21:09 Paper: https://openreview.net/pdf ...
- Adversarial Examples for Semantic Segmentation and Object Detection 阅读笔记
Adversarial Examples for Semantic Segmentation and Object Detection (语义分割和目标检测中的对抗样本) 作者:Cihang Xie, ...
- 对抗样本攻防战,清华大学TSAIL团队再获CAAD攻防赛第一
最近,在全球安全领域的殿堂级盛会 DEF CON 2018 上,GeekPwn 拉斯维加斯站举行了 CAAD CTF 邀请赛,六支由国内外顶级 AI 学者与研究院组成的队伍共同探讨以对抗训练为攻防手段 ...
随机推荐
- 5分钟白嫖我常用的免费效率软件/工具!效率300% up!
Mac 免费效率软件/工具推荐 1. uTools(Windows/Mac) 还在为了翻译 English 而专门下载一个翻译软件吗? 还在为了格式某个 json 文本.时间戳转换而打开网址百度地址吗 ...
- ABPHelper.CLI及其依赖项简单介绍
目录 目录 ABPHelper.CLI 入门 使用指南 命令行 技术点如下 Scriban 通过Microsoft.Extensions.FileProviders.Embedded获取嵌入资源 通过 ...
- Chrome IDM下载插件安装使用方法
一. 下载IDM (1)官方网站: http://www.internetdownloadmanager.com/download.html 二.安装IDM IDM安装 (1)运行安装程序 前进 ...
- luogu P2304 [NOI2015]小园丁与老司机 dp 上下界网络流
LINK:小园丁与老司机 苦心人 天不负 卧薪尝胆 三千越甲可吞吴 AC的刹那 真的是泪目啊 很久以前就写了 当时记得特别清楚 写到肚子疼.. 调到胳膊疼.. ex到根不不想看的程度. 当时wa了 一 ...
- Pintech品致全新多功能MDO 704E系列示波器全新推出
2020年 7月,Pintech品致全新推出推出首款具有多个模拟通道和多个数字通道的示波器.每个模拟通道带宽为200 MHz,每个模拟通道采样率同时达1 GSa/s,在一台仪器中,实现精确.可重复的. ...
- Phantomjs实现后端生成图片文件
目录 PhantomJS简介 了解rasterize.js 使用方法 今天,给大家分享一个Java后端利用Phantomjs实现生成图片的功能,同学们使用的时候,可以参考下! PhantomJS简介 ...
- 一篇文章教会你用Python爬取淘宝评论数据(写在记事本)
[一.项目简介] 本文主要目标是采集淘宝的评价,找出客户所需要的功能.统计客户评价上面夸哪个功能多,比如防水,容量大,好看等等. 很多人学习python,不知道从何学起.很多人学习python,掌握了 ...
- 解放双手!用 Python 控制你的鼠标和键盘
在工作中难免遇到需要在电脑上做一些重复的点击或者提交表单等操作,如果能通过 Python 预先写好相关的操作指令,让它帮你操作,然后你自己去刷网页打游戏,岂不是很爽?] 很多人学习python,不知道 ...
- IdentityServer4 (4) 静默刷新(Implicit)
写在前面 1.源码(.Net Core 2.2) git地址:https://github.com/yizhaoxian/CoreIdentityServer4Demo.git 2.相关章节 2.1. ...
- Java常用类:包装类,String,日期类,Math,File,枚举类
Java常用类:包装类,String,日期类,Math,File,枚举类