论文解读(TAT)《 Transferable Adversarial Training: A General Approach to Adapting Deep Classifiers》
Note:[ wechat:Y466551 | 可加勿骚扰,付费咨询 ]
论文信息
论文标题:Transferable Adversarial Training: A General Approach to Adapting Deep Classifiers
论文作者:Hong Liu, Mingsheng Long, Jianmin Wang, Michael I. Jordan
论文来源:ICML 2019
论文地址:download
论文代码:download
1 Introduction
出发点:当使用对抗性训练的时候,因为抑制领域特定的变化时,会扭曲原始的特征分布;
事实:

Figure2(b):
- 使用源域和目标域的标记数据做测试,对比了使用对抗性训练(DANN、MCD)和监督训练(EestNet50)的测试误差;
- 结论:使用对抗性训练,减少特定领域的变化不可避免地打破了原始表示的判别结构;
Figure2(c):
计算特征表示层模型权重的奇异值分布;
结论:使用对抗性训练的奇异值分布更加重尾,表示条件更差和更扭曲的特征表示;
2 方法
2.1 模型框架

2.2 Adversarial Generation of Transferable Examples
现有的对抗性特征自适应方法通过学习领域不变表示来减少特定领域的变化。用 $f = F (x)$ 表示特征提取器,用 $d = D (f)$ 表示域鉴别器。$D$ 和 $F$ 形成一个双人极大极小博弈:$D$ 训练区分源和目标,而 $F$ 同时训练混淆 $D$。然而,这样种过程可能会恶化适应性。为保证适应性,本文提出修复特征表示,并生成可转移的例子来弥合域差距。具体地说,仍然训练域鉴别器 $D$ 通过以下损失函数来区分源域和目标域:
$\begin{aligned}\ell_{d}\left(\theta_{D}, \mathbf{f}\right)= & -\frac{1}{n_{s}} \sum_{i=1}^{n_{s}} \log \left[D\left(\mathbf{f}_{s}^{(i)}\right)\right] \\& -\frac{1}{n_{t}} \sum_{i=1}^{n_{t}} \log \left[1-D\left(\mathbf{f}_{t}^{(i)}\right)\right] .\end{aligned} \quad\quad(1)$
分类器 $C$ 通过源域样本监督训练:
$\ell_{c}\left(\theta_{C}, \mathbf{f}\right)=\frac{1}{n_{s}} \sum_{i=1}^{n_{s}} \ell_{c e}\left(C\left(\mathbf{f}_{s}^{(i)}\right), \mathbf{y}_{s}^{(i)}\right) \quad\quad(2)$
与现有的对抗性训练方法不同,本文通过在一种新的对抗性训练范式中生成的可转移样本来填补源域和目标域之间的差距,从而减少分布变化。
生成的可转移样本需要满足两个条件:
- 首先,可转移的样本应该有效地混淆域鉴别器 $D$,从而填补域间隙,桥接源域和目标域;
- 其次,可转移的样本应该能够欺骗类别分类器 $C$,这样它们就可以推动决策边界远离数据点;
因此,可转移的样本是通过 $\ell_{c}$ 和 $\ell_{d}$ 的联合损失而反向生成的:
$\begin{aligned}\mathbf{f}_{t^{k+1}} \leftarrow \mathbf{f}_{t^{k}} & +\beta \nabla_{\mathbf{f}_{t^{k}}} \ell_{d}\left(\theta_{D}, \mathbf{f}_{t^{k}}\right) \\& -\gamma \nabla_{\mathbf{f}_{t^{k}}} \ell_{2}\left(\mathbf{f}_{t^{k}}, \mathbf{f}_{t^{0}}\right) \\\end{aligned} \quad\quad(3)$
$\begin{aligned}\mathbf{f}_{s^{k+1}} \leftarrow \mathbf{f}_{s^{k}} & +\beta \nabla_{\mathbf{f}_{s}} \ell_{d}\left(\theta_{D}, \mathbf{f}_{s^{k}}\right) \\& -\gamma \nabla_{\mathbf{f}_{s}} \ell_{2}\left(\mathbf{f}_{s^{k}}, \mathbf{f}_{s^{0}}\right) \\& +\beta \nabla_{\mathbf{f}_{s k}} \ell_{c}\left(\theta_{C}, \mathbf{f}_{s^{k}}\right)\end{aligned} \quad\quad(4)$
其中,$\mathbf{f}_{t^{0}}=\mathbf{f}_{t}, \mathbf{f}_{s^{0}}=\mathbf{f}_{s}, \mathbf{f}_{t *}=\mathbf{f}_{t^{K}}, \mathbf{f}_{s *}=\mathbf{f}_{s^{K}}$。
此外,为避免生成的样本的发散,控制生成的样本与原始样本之间的 $\ell_{2}$-距离。
2.3 Adversarial Training with Transferable Examples
因此,对类别分类器 $C$ 的对抗性训练的损失函数表述如下:
$\begin{aligned}\ell_{c, a d v}\left(\theta_{C}, \mathbf{f}_{*}\right) & =\frac{1}{n_{s}} \sum_{i=1}^{n_{s}} \ell_{c e}\left(C\left(\mathbf{f}_{s *}^{(i)}\right), \mathbf{y}_{s *}^{(i)}\right) \\& +\frac{1}{n_{t}} \sum_{i=1}^{n_{t}}\left|C\left(\left(\mathbf{f}_{t *}^{(i)}\right)\right)-C\left(\left(\mathbf{f}_{t}^{(i)}\right)\right)\right|\end{aligned} \quad\quad(5)$
与训练类别分类器类似,也用生成的可转移的例子来训练域鉴别器。这对于稳定对抗性训练过程很重要,否则生成的可转移的例子就会出现分歧。另一个关键的观点是利用这些可转移的例子来弥合领域上的差异。简单地在原始数据上欺骗域鉴别器并不能保证生成的示例可以从一个域转移到另一个域。因此,建议反向训练域鉴别器,以进一步区分可转移的例子从源和目标,使用以下损失:
$\begin{aligned}\ell_{d, a d v}\left(\theta_{D}, \mathbf{f}_{*}\right)= & -\frac{1}{n_{s}} \sum_{i=1}^{n_{s}} \log \left[D\left(\mathbf{f}_{s *}^{(i)}\right)\right] \\& -\frac{1}{n_{t}} \sum_{i=1}^{n_{t}} \log \left[1-D\left(\mathbf{f}_{t *}^{(i)}\right)\right]\end{aligned} \quad\quad(6)$
我们共同最小化误差(1)和误差(6)来训练 $D$,最小化误差(2)和误差(5) 来训练 $C$,训练目标:
$\begin{array}{l}\underset{\theta_{D}, \theta_{C}}{\text{min}}\;\;\ell_{d}\left(\theta_{D}, \mathbf{f}\right)+\ell_{c}\left(\theta_{C}, \mathbf{f}\right) +\ell_{d, a d v}\left(\theta_{D}, \mathbf{f}_{*}\right)+\ell_{c, a d v}\left(\theta_{C}, \mathbf{f}_{*}\right) \end{array} \quad\quad(7)$
3 实验


论文解读(TAT)《 Transferable Adversarial Training: A General Approach to Adapting Deep Classifiers》的更多相关文章
- 迁移学习(PAT)《Pairwise Adversarial Training for Unsupervised Class-imbalanced Domain Adaptation》
论文信息 论文标题:Pairwise Adversarial Training for Unsupervised Class-imbalanced Domain Adaptation论文作者:Weil ...
- 论文解读(ARVGA)《Learning Graph Embedding with Adversarial Training Methods》
论文信息 论文标题:Learning Graph Embedding with Adversarial Training Methods论文作者:Shirui Pan, Ruiqi Hu, Sai-f ...
- 论文解读( FGSM)《Adversarial training methods for semi-supervised text classification》
论文信息 论文标题:Adversarial training methods for semi-supervised text classification论文作者:Taekyung Kim论文来源: ...
- 论文解读(SR-GNN)《Shift-Robust GNNs: Overcoming the Limitations of Localized Graph Training Data》
论文信息 论文标题:Shift-Robust GNNs: Overcoming the Limitations of Localized Graph Training Data论文作者:Qi Zhu, ...
- 《C-RNN-GAN: Continuous recurrent neural networks with adversarial training》论文笔记
出处:arXiv: Artificial Intelligence, 2016(一年了还没中吗?) Motivation 使用GAN+RNN来处理continuous sequential data, ...
- 自监督学习(Self-Supervised Learning)多篇论文解读(下)
自监督学习(Self-Supervised Learning)多篇论文解读(下) 之前的研究思路主要是设计各种各样的pretext任务,比如patch相对位置预测.旋转预测.灰度图片上色.视频帧排序等 ...
- CVPR2019 | Mask Scoring R-CNN 论文解读
Mask Scoring R-CNN CVPR2019 | Mask Scoring R-CNN 论文解读 作者 | 文永亮 研究方向 | 目标检测.GAN 推荐理由: 本文解读的是一篇发表于CVPR ...
- Adversarial Training
原于2018年1月在实验室组会上做的分享,今天分享给大家,希望对大家科研有所帮助. 今天给大家分享一下对抗训练(Adversarial Training,AT). 为何要选择这个主题呢? 我们从上图的 ...
- Gaussian field consensus论文解读及MATLAB实现
Gaussian field consensus论文解读及MATLAB实现 作者:凯鲁嘎吉 - 博客园 http://www.cnblogs.com/kailugaji/ 一.Introduction ...
- CVPR2020 论文解读:少点目标检测
CVPR2020 论文解读:具有注意RPN和多关系检测器的少点目标检测 Few-Shot Object Detection with Attention-RPN and Multi-Relation ...
随机推荐
- 2023-01-09:以下go语言代码输出什么?A:+Inf; B:zero; C:something else; D:doesn‘t compile。 package main import (
2023-01-09:以下go语言代码输出什么?A:+Inf: B:zero: C:something else: D:doesn't compile. package main import ( & ...
- 2021-07-13:恢复二叉搜索树。给你二叉搜索树的根节点 root ,该树中的两个节点被错误地交换。请在不改变其结构的情况下,恢复这棵树。进阶:使用 O(n) 空间复杂度的解法很容易实现。你能想出
2021-07-13:恢复二叉搜索树.给你二叉搜索树的根节点 root ,该树中的两个节点被错误地交换.请在不改变其结构的情况下,恢复这棵树.进阶:使用 O(n) 空间复杂度的解法很容易实现.你能想出 ...
- Spring原理(1)——容器
容器接口 BeanFactory 是ApplicationContext的父接口,所有ApplicationContext的实现都组合了BeanFactory. BeanFactory才是Spring ...
- django时区问题的解决
django时区问题的解决 更新时间:2021年05月18日 09:37:58 作者:Silent丿丶黑羽 我们都知道时区,标准时区是UTC时区,django默认使用的就是UTC时区,我 ...
- Spring Cloud开发实践(五): Consul - 服务注册的另一个选择
目录 Spring Cloud开发实践(一): 简介和根模块 Spring Cloud开发实践(二): Eureka服务和接口定义 Spring Cloud开发实践(三): 接口实现和下游调用 Spr ...
- 【GiraKoo】安装Visual Assist失败,提示“此扩展已经安装到所有适用的产品”
[问题解决]安装Visual Assist失败,提示"此扩展已经安装到所有适用的产品" 在安装Visual Assist插件时,提示错误. 点击下一步之后,进入插件安装界面.插件安 ...
- 如何使用Map处理Dom节点
本文浅析一下为什么Map(和WeakMap)在处理大量DOM节点时特别有用. 我们在JavaScript中使用了很多普通的.古老的对象来存储键/值数据,它们处理的非常出色: const person ...
- adb server version (31) doesn't match this client (41); killing...
使用用 adb devices 提示如下错误 C:\Users\Lenovo>adb devices adb server version (31) doesn't match this cli ...
- vue3+ts使用v-for出现unknown问题
最近在写项目时遇到了一个问题,当我从父组件向子组件传数据并且需要将子组件对传入的数据进行v-for循环渲染时,在此出遇到了一个ts报错 报错为循环出的data类型为unknown 具体代码如下 : 子 ...
- 基于GPT搭建私有知识库聊天机器人(三)向量数据训练
在前面的文章中,我们介绍了实现原理和基本环境安装.本文将重点介绍数据训练的流程,以及如何加载.切割.训练数据,并使用向量数据库Milvus进行数据存储. 1. 数据训练依赖于向量数据库 在本文中,我们 ...