NIPS 2018论文解读 | 基于条件对抗网络的领域自适应方法

论文动机

 

Domain Adaptation 问题一直以来是迁移学习和计算机视觉领域等的研究热点。从传统方法,到深度方法,再到最近的对抗方法,都在尝试解决此问题。作者在本文中提出, 现在的对抗方法面临两个挑战:

 

一是当数据特征具有非常复杂的模态结构时,对抗方法无法捕获多模态的数据结构,容易造成负迁移。通俗点说就是,现有的方法没有抓住深度特征之间的关系,只是把它们一股脑进行对抗适配。

 

二是当上面的问题存在时,domain classifier 就很容易出错,所以造成迁移效果不好。

 

论文方法

 

本文提出了 基于条件对抗网络的领域自适应方法 ,英文名叫做 Conditional Adversarial Domain Adaptation。从题目中不难看出, 主要由 Condition + Adversarial + Adaptation 这三部分构成。

 

进行 condition 的时候,用到了一个叫做 multilinear map 的数学工具,主要是来刻画多个特征和类别之间的关系。下面我们分别进行描述。

 

对抗网络基本结构

 

发表于 ICML 2015 的经典文章 Unsupervised domain adaptation by backpropagation [1]中提出了用对抗的思想进行 Domain Adaptation,该方法名叫 DANN(或 RevGrad)。核心的问题是同时学习分类器 G、特征提取器 F、以及领域判别器 D。通过最小化分类器误差,最大化判别器误差,使得学习到的特征表达具有跨领域不变性。

 

作者指出,DANN 的方法只是关注了数据特征的整体分布,忽略了和类别之间的相关性。因此, 本文首先提出,要将特征和类别一起做自适应。 公式如下:

 

 

其中,f 和 g 分别是特征和类别。通过类似于 GAN 的最大最小优化方法,就可以进行 Domain Adaptation。

 

条件对抗机制

 

联合优化 (f,g) 的方法很多,将它们的特征向量连接起来是最直接的方法。但是这会造成它们彼此之间还是相互无关。达不到控制条件的目的。

 

作者借鉴了数学上的多线性映射(Multilinear Map)概念,来表征特征和分类器彼此之间的关系。什幺是多线性映射?通俗点说就是,f(x)→y 是单映射,f(x,y)→z 是双映射,以此类推。线性呢?当固定其他自变量时,f 对未固定的那个自变量满足线性性(就是可加性、数乘不变),维基百科上对多线性映射的解释太抽象了。

 

那幺,如何进行多线性映射?用 f⊗g。这里的 ⊗ 表示张量乘法,就是很多维的矩阵的乘法。

 

由于在深度网络中,特征维度往往很高。为了解决维度高导致的计算复杂度增加的问题,作者引入了相应的计算方法:

 

 

就是说, 当数据维度太高时,直接从特征里随机采样一些向量做乘法。 否则,用作者提出的方法做映射。

 

条件对抗网络

 

为了应对那些对迁移有负面影响的样本,作者用熵来控制它们的重要性,把熵操作加到了对抗网络中。

 

整个网络的优化目标如下:

 

 

作者还在文章中分析了方法的理论误差上界。

 

实验

 

实验部分与传统的 Domain Adaptation 相同,在 Office-31,ImageCLEF-DA,Office-Home,MNIST,USPS,以及 SVHN 这些公开数据集上都进行了实验。

 

 

 

实验比较充分,详细结果可以看原文。从结果上来说,取得了比作者之前的 JAN 更好的结果,不过提升幅度有限,这可能是深度网络”渐进式”式的增长。

 

参考文献

 

[1] Ganin, Y. and Lempitsky, V. Unsupervised domain adaptation by backpropagation. In International Conference on Machine Learning (ICML), 2015.

发表评论

电子邮件地址不会被公开。 必填项已用*标注