TriggerBN ++
motivation
用两个BN(一个用于干净样本, 一个用于对抗样本), 结果当使用\(\mathrm{BN}_{nat}\)的时候, 精度能够上升, 而使用\(\mathrm{BN}_{adv}\)的时候, 也有相当的鲁棒性. 原文采用的是
\]
来训练(这里\(f(x)\)输出的是概率向量而非logits), 试试看别的组合方式, 比如
\]
settings
| Attribute | Value |
|---|---|
| attack | pgd-linf |
| batch_size | 128 |
| beta1 | 0.9 |
| beta2 | 0.999 |
| dataset | cifar10 |
| description | AT=0.5=default-sgd-0.1=pgd-linf-0.0314-0.25-10=128=default |
| epochs | 100 |
| epsilon | 0.03137254901960784 |
| learning_policy | [50, 75] x 0.1 |
| leverage | 0.5 |
| loss | cross_entropy |
| lr | 0.1 |
| model | resnet32 |
| momentum | 0.9 |
| optimizer | sgd |
| progress | False |
| resume | False |
| seed | 1 |
| stats_log | False |
| steps | 10 |
| stepsize | 0.25 |
| transform | default |
| weight_decay | 0.0005 |
results
x轴为\(\alpha\)从\(0\)变化到\(1\).
| Accuracy | Robustness | |
|---|---|---|
| \(0.5 \mathcal{L}_{nat} + 0.5\mathcal{L}_{adv}\) | ![]() |
![]() |
| \(\mathcal{L}(0.5 p_{nat} + 0.5p_{adv}, y)\) | ![]() |
![]() |
| \(0.1 \mathcal{L}_{nat} + 0.9\mathcal{L}_{adv}\) 48.350 | ![]() |
![]() |
| \(\mathcal{L}(0.1 p_{nat} + 0.9p_{adv}, y)\) 48.270 | ![]() |
![]() |
| \(0.2 \mathcal{L}_{nat} + 0.8\mathcal{L}_{adv}\) 48.310 | ![]() |
![]() |
| \(\mathcal{L}(0.2 p_{nat} + 0.8p_{adv}, y)\) 47.960 | ![]() |
![]() |
似乎原来的形式情况更好一点.
TriggerBN ++的更多相关文章
随机推荐
- 容器之分类与各种测试(四)——unordered-multiset
unordered-multiset是不定序关联式容器,其底部是通过哈希表实现功能. (ps:黑色框就是bucket,白色框即为bucket上挂载的元素) 为了提高查找效率,bucket(篮子)的数量 ...
- Git命令行演练-团队开发
** 团队开发必须有一个共享库,这样成员之间才可以进行协作开发** ### 0. 共享库分类 > 本地共享库(只能在本地面对面操作) - 电脑文件夹/U盘/移动硬盘 & ...
- Java Timestamp 类的使用
很简单,我们可以这样声明 Timestamp ts=new Timestamp(new Date().getTime());这样我们就可以得到时间比较具体的一个类型转换!!! 在开发web应用中,针对 ...
- RPC 框架
RPC 谁能用通俗的语言解释一下什么是 RPC 框架? - 远程过程调用协议RPC(Remote Procedure Call Protocol) RPC就是要像调用本地的函数一样去调远程函数. 推荐 ...
- 莫烦python教程学习笔记——validation_curve用于调参
# View more python learning tutorial on my Youtube and Youku channel!!! # Youtube video tutorial: ht ...
- C# 使用modbus 读取PLC 寄存器地址
使用的组件Nmodbus 定义参数,全局变量: //创建modbus实体对象 private static ModbusFactory modbusFactory; private static IM ...
- 工作簿拆分(Excel代码集团)
一个工作簿中包括N个工作表,将各个工作表拆分成工作簿. 工作表数量不定,表内内容不限,拆分后保存于当前文件夹内. Sub Sample() Dim MySheetsCount As Long For ...
- 在【自定义列】中使用M函数(Power Query 之 M 语言)
数据源: "品名"一列 目标: 提取品名中的首字符,生成新列:"品名简称" 解决方案: 在[自定义列]中使用M函数Text.Start 步骤: 打开[自定义列] ...
- 日历的种类(Project)
<Project2016 企业项目管理实践>张会斌 董方好 编著 日历有三种:标准日历.24小时日历和夜班日历. 设置的位置在[项目]>[属性]>[更改工作时间]>[ ...
- WPF之交互触发器(CallMethodAction)学习
需求背景: 当我们需要制作画板时,我们的VM需要记录我们的坐标并保存到Path的Data中,用我们普通的Command是无法办到的,这时我们就衍生出来了一个交互触发器CallMethodAction ...











