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对抗攻击笔记的更多相关文章

  1. KDD 2018 | 最佳论文:首个面向Facebook、arXiv网络图类的对抗攻击研究

    8 月 19 日至 23 日,数据挖掘顶会 KDD 2018 在英国伦敦举行,昨日大会公布了最佳论文等奖项.最佳论文来自慕尼黑工业大学的研究者,他们提出了针对图深度学习模型的对抗攻击方法,是首个在属性 ...

  2. 对抗攻击(一) FGSM

    引言 在对抗样本综述(二)中,我们知道了几种著名的对抗攻击和对抗防御的方法.下面具体来看下几种对抗攻击是如何工作的.这篇文章介绍FGSM(Fast Gradient Sign Method). 预备知 ...

  3. QA 中的对抗攻击和防御

    攻击 supporting facts 的修改:字符调换,替换词(用空格embedding或近同义词,变形词等) 还有针对question的攻击. 梯度下降,在embediing上做攻击,如何deco ...

  4. Yii防注入攻击笔记

    网站表单有注入漏洞须对所有用户输入的内容进行个过滤和检查,可以使用正则表达式或者直接输入字符判断,大部分是只允许输入字母和数字的,其它字符度不允许:对于内容复杂表单的内容,应该对html和script ...

  5. Exploring Adversarial Attack in Spiking Neural Networks with Spike-Compatible Gradient

    郑重声明:原文参见标题,如有侵权,请联系作者,将会撤销发布! arXiv:2001.01587v1 [cs.NE] 1 Jan 2020 Abstract 脉冲神经网络(SNN)被广泛应用于神经形态设 ...

  6. 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 ...

  7. 深度学习课程笔记(十二) Matrix Capsule

    深度学习课程笔记(十二) Matrix Capsule with EM Routing  2018-02-02  21:21:09  Paper: https://openreview.net/pdf ...

  8. Adversarial Examples for Semantic Segmentation and Object Detection 阅读笔记

    Adversarial Examples for Semantic Segmentation and Object Detection (语义分割和目标检测中的对抗样本) 作者:Cihang Xie, ...

  9. 对抗样本攻防战,清华大学TSAIL团队再获CAAD攻防赛第一

    最近,在全球安全领域的殿堂级盛会 DEF CON 2018 上,GeekPwn 拉斯维加斯站举行了 CAAD CTF 邀请赛,六支由国内外顶级 AI 学者与研究院组成的队伍共同探讨以对抗训练为攻防手段 ...

随机推荐

  1. html标签集合

    ---恢复内容开始--- 基础 <!DOCTYPE>,<html>,<title>,<body>,<h1>to<h6>,< ...

  2. LQB2013A02排它平方数

    这个题方向其实还算好找,就是枚举嘛 (这是一个填空题,所以六个for嵌套也无所谓,因为毕竟emmmm,不看时间) 这里是判断的代码: 需要把数字转化成字符串 void i2s(int x,string ...

  3. Fortify Audit Workbench 笔记 Password Management: Password in Configuration File(明文存储密码)

    Password Management: Password in Configuration File(明文存储密码) Abstract 在配置文件中存储明文密码,可能会危及系统安全. Explana ...

  4. Day13_商品详情及静态化

    学于黑马和传智播客联合做的教学项目 感谢 黑马官网 传智播客官网 微信搜索"艺术行者",关注并回复关键词"乐优商城"获取视频和教程资料! b站在线视频 0.学习 ...

  5. Day13_Thymeleaf简介

    学于黑马和传智播客联合做的教学项目 感谢 黑马官网 传智播客官网 微信搜索"艺术行者",关注并回复关键词"乐优商城"获取视频和教程资料! b站在线视频 1.Th ...

  6. Python File truncate() 方法

    概述 truncate() 方法用于截断文件,如果指定了可选参数 size,则表示截断文件为 size 个字符.高佣联盟 www.cgewang.com 如果没有指定 size,则从当前位置起截断:截 ...

  7. C/C++编程笔记:C++入门知识丨继承和派生

    本篇要学习的内容和知识结构概览 继承和派生的概念 派生 通过特殊化已有的类来建立新类的过程, 叫做”类的派生”, 原有的类叫做”基类”, 新建立的类叫做”派生类”. 从类的成员角度看, 派生类自动地将 ...

  8. 7.1 NOI模拟赛 凸包套凸包 floyd 计算几何

    计算几何之所以难学 就是因为太抽象了 不够直观 而且情况很多 很繁琐 甚至有一些东西不清不楚.. 这道题注意到题目中的描述 一个鸽子在两个点所连直线上也算. 通过看题解 发现这个地方并非直线而是线段 ...

  9. 【问题记录】ajax dataType属性

    最近整理代码,发现一些ajax dataType 属性值设置的问题.下面直接上代码说明下 前台ajax请求 $.ajax({ type: "get", dataType: &quo ...

  10. python网络爬虫实战PDF高清完整版免费下载|百度云盘|Python基础教程免费电子书

    点击获取提取码:vg1y python网络爬虫实战帮助读者学习Python并开发出符合自己要求的网络爬虫.网络爬虫,又被称为网页蜘蛛,网络机器人,是一种按照一定的规则,自动地抓取互联网信息的程序或者脚 ...