王晋东作者中国科学院计算技术研究所博士生学校迁移学习和机器学习研究方向

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

这篇论文即将发表于 NIPS 2018(现在应该叫 NeurIPS 了),作者是清华大学的龙明盛团队。论文研究的还是领域自适应(Domain Adaptation)这一热点问题,在一些公共的数据集中,本文的方法取得了当前最优的结果。

论文动机

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.

PaperWeekly
PaperWeekly

推荐、解读、讨论和报道人工智能前沿论文成果的学术平台。

理论NIPS 2018领域自适应
1
相关数据
机器学习技术

机器学习是人工智能的一个分支,是一门多领域交叉学科,涉及概率论、统计学、逼近论、凸分析、计算复杂性理论等多门学科。机器学习理论主要是设计和分析一些让计算机可以自动“学习”的算法。因为学习算法中涉及了大量的统计学理论,机器学习与推断统计学联系尤为密切,也被称为统计学习理论。算法设计方面,机器学习理论关注可以实现的,行之有效的学习算法。

张量技术

张量是一个可用来表示在一些矢量、标量和其他张量之间的线性关系的多线性函数,这些线性关系的基本例子有内积、外积、线性映射以及笛卡儿积。其坐标在 维空间内,有 个分量的一种量,其中每个分量都是坐标的函数,而在坐标变换时,这些分量也依照某些规则作线性变换。称为该张量的秩或阶(与矩阵的秩和阶均无关系)。 在数学里,张量是一种几何实体,或者说广义上的“数量”。张量概念包括标量、矢量和线性算子。张量可以用坐标系统来表达,记作标量的数组,但它是定义为“不依赖于参照系的选择的”。张量在物理和工程学中很重要。例如在扩散张量成像中,表达器官对于水的在各个方向的微分透性的张量可以用来产生大脑的扫描图。工程上最重要的例子可能就是应力张量和应变张量了,它们都是二阶张量,对于一般线性材料他们之间的关系由一个四阶弹性张量来决定。

计算机视觉技术

计算机视觉(CV)是指机器感知环境的能力。这一技术类别中的经典任务有图像形成、图像处理、图像提取和图像的三维推理。目标识别和面部识别也是很重要的研究领域。

映射技术

映射指的是具有某种特殊结构的函数,或泛指类函数思想的范畴论中的态射。 逻辑和图论中也有一些不太常规的用法。其数学定义为:两个非空集合A与B间存在着对应关系f,而且对于A中的每一个元素x,B中总有有唯一的一个元素y与它对应,就这种对应为从A到B的映射,记作f:A→B。其中,y称为元素x在映射f下的象,记作:y=f(x)。x称为y关于映射f的原象*。*集合A中所有元素的象的集合称为映射f的值域,记作f(A)。同样的,在机器学习中,映射就是输入与输出之间的对应关系。

迁移学习技术

迁移学习是一种机器学习方法,就是把为任务 A 开发的模型作为初始点,重新使用在为任务 B 开发模型的过程中。迁移学习是通过从已学习的相关任务中转移知识来改进学习的新任务,虽然大多数机器学习算法都是为了解决单个任务而设计的,但是促进迁移学习的算法的开发是机器学习社区持续关注的话题。 迁移学习对人类来说很常见,例如,我们可能会发现学习识别苹果可能有助于识别梨,或者学习弹奏电子琴可能有助于学习钢琴。

推荐文章
暂无评论
暂无评论~