对抗攻击方法BIM与PGD的区别

Basic iterative method(BIM):论文地址 笔记地址

Projected gradient descent(PGD):论文地址 笔记地址

区别1

来自于:https://www.sciencedirect.com/science/article/pii/S209580991930503X
1)BIM 将一步的FGSM直接扩展为多步方法:

[x’{t+1}=Clip{x, \epsilon} {x’{t}+\alpha\; {\rm sign}(\bigtriangledown{x}J(\theta,x’_{t}, y))} \tag{1} ]

BIM 每次迭代以很小的步长执行FGSM,将对抗样本剪裁和更新到一个合法的范围内;迭代 (T) 次,(\alpha T = \epsilon),(\alpha) 是每次迭代中扰动的大小。

2)PGD是FGSM的多步变体:

[x’{t+1} = \Pi {x+\mathcal{S}} \left ( x’{t}+\alpha \;{\rm sign}(\bigtriangledown_x J(\theta,x’{t}, y)) \right ) \tag{2} ]

为了约束对抗扰动的大小,PGD 不使用 (\alpha T = \epsilon)的方式,而是将对抗性样本投影到 (x) 的 (l_\infty)-ball((\epsilon-l_\infty) neighbor) 中,因此扰动的值大于 BIM 的扰动。公式(2)中的 (\mathcal{S} \subseteq \mathbb{R}^d) 为扰动集合。

区别2

来自于:https://github.com/MadryLab/mnist_challenge/issues/3

对抗攻击方法BIM与PGD的区别
  • PGD添加了一个均匀分布的随机噪声作为初始化(随机初始扰动),也就是:选择(x) 的(\epsilon-l_\infty)- ball 内的一个随机点作为起始点,从这个点开始执行 PGD。

Original: https://www.cnblogs.com/setdong/p/16414769.html
Author: 李斯赛特
Title: 对抗攻击方法BIM与PGD的区别

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/578616/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 机器学习学习笔记之一:K最近邻算法(KNN)

    假定数据有M个特征,则这些数据相当于在M维空间内的点 [X = \begin{pmatrix} x_{11} & x_{12} & … & x_…

    Linux 2023年6月14日
    068
  • 常用命-sar

    作者:Outsrkem原文链接:https://www.cnblogs.com/outsrkem/p/14725402.html本文版权归作者所有,欢迎转载,但未经作者同意必须保留…

    Linux 2023年6月6日
    072
  • Linux 命令行设置网络代理

    echo $SHELL/usr/bin/zsh 根据当前的shell类型来设置,我这里以zsh为例,vim ~/.zshrc export ALL_PROXY=”htt…

    Linux 2023年6月6日
    0178
  • 怎么用vscode创建工程

    以下内容为本人的学习笔记,如需要转载,请声明原文链接微信公众号「englyf」 https://mp.weixin.qq.com/s/x2OXMTaLlxb_Os7NDHrKsg …

    Linux 2023年6月6日
    095
  • mysql通过mysqldump命令重做从库详细操作步骤

    备份主库所有数据,并将dump.sql文件拷贝到从库/tmp目录 mysqldump -uroot -p –set-gtid-purged=OFF –single-transa…

    Linux 2023年6月8日
    059
  • Redis info参数总结(转)

    可以看到,info的输出结果是分几块的,有Servers、Clients、Memory等等,通过info后面接这些参数,可以指定输出某一块数据。 我刚开始在Gentoo上装的默认版…

    Linux 2023年5月28日
    0113
  • postgresql 自增列 初始值设置

    — 获取自增列的名称 SELECT pg_get_serial_sequence(‘table_name’, ‘id’) AS sequence_name; –获取自增列的下一…

    Linux 2023年6月14日
    057
  • 统计每个月兔子的总数—牛客网

    统计每个月兔子的总数_牛客题霸_牛客网 (nowcoder.com) #include using namespace std; int main() { //1 1 2 3 5 …

    Linux 2023年6月13日
    089
  • redis配置systemctl

    [Unit]Description=redisAfter=network.target [Service]Type=forkingPIDFile=/var/run/redis_63…

    Linux 2023年5月28日
    096
  • shell的入门

    命名只能使用英文字母,数字和下划线,首个字符不能以数字开头。 中间不能有空格,可以使用下划线 不能使用标点符号 不能使用bash里面关键字 使用变量加上$就可使用 只读变量 rea…

    Linux 2023年6月8日
    079
  • 内存分配-slab分配器

    1 slab综述 1.1 slab分配器产生的背景 类似 task_struct mm_struct 等结构被内核中被频繁分配和释放,同时创建和销毁这些结构会产生一定的开销(ove…

    Linux 2023年6月7日
    071
  • Web Api单元测试写法

    例如我们在Web Api项目中有个Controller 如果你在单元测试中直接调用 SomeController 的Get()方法,那么你将会收到一个Exception提示Requ…

    Linux 2023年6月14日
    077
  • [SSM架构]springboot笔记

    框架基础介绍 框架概念 框架(Framework)是一个半成品软件,将所有的、公共的、重复的功能解决掉,帮助程序快速高效的进行开发,他是可重复的,可拓展的。 常见的框架&#8211…

    Linux 2023年6月13日
    080
  • CentOS-7配置fastDFS文件服务器和安装Nginx

    配置步骤实在是很繁琐,听我慢慢道来! 主要是配置管理(tracker)和存储(storage)返回地址样式 –> 域名/组名/磁盘名/目录名/文件名 &#8211…

    Linux 2023年5月27日
    075
  • MySQL环境变量配置方法

    MySQL配置方法 下载免安装版本的MySQL数据库,大家根据自己的开发环境下载对应版本的数据库,我在此举例的是Windows系统下的配置方法,下载地址如下: https://de…

    Linux 2023年6月7日
    093
  • DNS Rebinding漏洞原理

    DNS Rebinding 广泛用于 绕过同源策略、SSRF过滤等。 背景 为什么需要SSRF过滤器?• 由于一些业务的需要,他们就是需要让用户输入URL,然后进行跳转,如果过滤得…

    Linux 2023年6月6日
    0105
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球