当前位置:   article > 正文

ICML2019: Domain Agnostic Learning with Disentangled Representations

domain agnostic learning with disentangled representations

ICML2019: Domain Agnostic Learning with Disentangled Representations

引言

目前的domain adaptation考虑了两种情况:single source & single target(认为源域为一种分布,目标域为一种分布,进行adapt); multi-souce & single target(存在多个源域且为不同的分布,目标域为一种分布,进行adapt)。还没有方法考虑single source & multi-target的问题,本文对解决该问题进行了探讨。 (PS. 目前还没看到解决multi-source & multi-target的方法)。

Architecture ##在这里插入图片描述

由上图,首先输入样本,经过一个generator G,变换为特征向量 f G f_G fG,然后经过disentangler D,进行特征的disentanglement:

  • 抽取领域无关(domain-invariant)的特征;
  • 使用class disentanglement移除类别无关(class-irrelevant)的特征;
  • 进一步地,减少两个分布间的互信息(mutual information)进一步加强进行特征的disentanglement。

下面我们具体来看下。

变分自编码器

上面说的generator G,实际上就是VAEs的编码部分,将特征编码到一个高斯分布。然后经过reconstructor(图中粉色梯形)进行重构。 对于得到的每一个 f ^ ( G ) \hat{f}(G) f^(G),VAE的损失函数为:
在这里插入图片描述
该损失并不能保证domain-invariant或者class disentanglement,只是为了确保特征向量服从高斯分布。

Class Disentanglement

这里所谓的类别无关的,指的是剔除掉对于我们最终的分类没有用的信息,比如背景。这里通过对抗学习实现,进行分步优化。首先训练disentangler D和class identifier(图中黑色的三角),使得class identifier能尽可能的识别,使用交叉熵损失:
在这里插入图片描述
对于 f d i f_{di} fdi,也用来进行class identifier的训练(PS. domain invariant的特征当然可以用来学习分类器, 没什么好说的),所以这里 f D f_D fD可以是 f d i f_{di} fdi f c i f_{ci} fci f d i f_{di} fdi表示domain invarient特征, f c i f_{ci} fci表示class-irrelevant特征。

第二步,固定class identifier,训练disentangler D,使得提取的特征 f c i f_{ci} fci无法被class identifier识别,通过最小化下面的负的熵损失实现(将对抗学习的minmax中的max项加个负号,变为min):
在这里插入图片描述

Domain Disentanglement

和之前同样的策略,为了学得domain invariant特征,使用对抗学习。训练domain identifier DI:
在这里插入图片描述
DI 的输入为 f d i f_{di} fdi或者 f d s f_{ds} fds,实际上是个二分类。接下来同样的策略训练disentangler D,使得提取的特征无法被DI识别。

到这里,还感觉这篇paper没多少创新性,接下来将互信息引入进来进一步进行disentanglement就比较有意思了。之前还没见过利用这种方式来进行特征的disentanglement。

Mutual Information Minimization

互信息(Mutual Information, MI)用于表示两个变量之间的关系,以及关系的强弱。即一个变量中包含的关于另一个变量的信息量。根据MI的含义,我们可以进一步利用它来进行特征的disentanglement。分别对两组特征: ( f d i , f d s ) (f_{di},f_{ds}) (fdi,fds) ( f d i , f c i ) (f_{di},f_{ci}) (fdi,fci),减少它们之间的互信息:
在这里插入图片描述
看起来这个公式很复杂,实际上就是下式的另一种表示。两个连续随机变量 X 和 Y 的互信息可以定义为:
在这里插入图片描述
其中 p(x,y) 是 X 和 Y 的联合概率分布函数,而p(x)和p(y)分别是 X 和 Y 的边缘概率分布函数。可以看出当X和Y互相独立时,互信息为0。而X和Y越相关,互信息值越大。然而互信息处理连续变量很不方便,毕竟是个二重积分。计算的复杂度为 O ( n 2 ) O(n^2) O(n2)。对于deep learning这个复杂度太不友好了。于是采用了(Belghazi et al., 2018)的方法对MI进行估计(Mutual Information Neural Estimator(MINE)):
在这里插入图片描述
通过引入一个神经网络 T θ T_{\theta} Tθ,上式提供了对于MI的无偏估计。MINE(Belghazi et al., 2018)可以由下式进行计算:
在这里插入图片描述
为了避免计算积分,使用蒙特卡洛方法:
在这里插入图片描述

Ring-style Normalization

由于目标域的数据来自多个不同的分布,所以其特征在latent space中的分布也是不规则的。Zheng等人(2018)提出了ring-style norm constraint用于保证多类别的角分类边界(angular classification margins)间的均衡性(PS. 没有读该paper,不明白,这里大概记一下):
在这里插入图片描述
其中R表示学到的norm value。然而ring loss并不是鲁棒的,如果学到的R比较小可能导致mode collapse model。所以,这里将ring loss利用Geman-McClure进行变换(PS. Geman-McClure提供了一种更鲁棒的损失函数的形式),减少下面的loss:
在这里插入图片描述
其中 β \beta β为变换因子(scale factor)。

本文内容由网友自发贡献,转载请注明出处:【wpsshop博客】
推荐阅读
相关标签
  

闽ICP备14008679号