当前最好的非深度迁移学习方法:流形空间下的分布对齐

2018-08-01    来源:raincent

容器云强势上线!快速搭建集群,上万Linux镜像随意使用
本文即将发表在国际顶级会议 ACM Multimedia conference 2018 上,被评为 ORAL,而且是 Top 10 Paper。论文提出了一个叫 MEDA (Manifold Embedded Distribution Alignment) 的方法进行迁移学习,取得了对比当前众多最新的深度和非深度方法的最好结果。

我们系统性地解决了如何定量估计边缘分布和条件分布在迁移学习中的重要性的问题,这也是当前所有文章没有考虑过的。我们的方法是首次完成这个估计。

■ 论文 | Visual Domain Adaptation with Manifold Embedded Distribution Alignment

■ 链接 | https://www.paperweekly.site/papers/2123

■ 源码 | http://transferlearning.xyz/

主要思路

我们提出通过自适应的分布适配的方式,来减小流形空间中的特征之间的距离,最终构建一个分类器 f。现有的工作通常都只是在原始的数据空间中学习此分类器 f,然而由于原始空间下的特征往往存在扭曲,因而会使得学习结果出现欠适配。根据流形假设,嵌入在流形空间中的点和它们的邻居通常都有着相似的性质。因此,我们提出流形特征变换,以此来减小域之间的数据漂移;然后进行自适应的分布适配,最后学习分类器 f。

流形特征变换之后,我们在结构风险最小化的框架下,通过自适应的分布适配来学习分类器 f。考虑到 Ds 和 Dt 之间不同的数据分布,即

,我们需要适配此二者的分布,以此来确保在 Ds 上学习到的知识能够成功地被迁移到 Dt 上。特别地,我们提出动态衡量边缘分布和条件分布重要性,以此来进行自适应的分布适配。最后,分类器 f 可以被很好地学习到。

 

可以用下面的图进行表示。

 

 

流形特征变换

由于在流形空间中的特征通常都有着很好的几何性质,可以避免特征扭曲,因此我们首先将原始空间下的特征变换到流形空间中。在众多已知的流形中,Grassmann 流形 G (d) 可以通过将原始的 d 维子空间(特征向量)看作它基础的元素,从而可以帮助学习分类器。

在 Grassmann 流形中,特征变换和分布适配通常都有着有效的数值形式,因此在迁移学习问题中可以被很高效地表示和求解。因此,利用Grassmann流形空间中来进行分类器 f 的学习是可行的。

现存有很多方法可以将原始特征变换到流形空间,在现存的这些方法中,我们选择测地线流式核方法(Geodesic Flow Kernel, GFK)来集成进MEDA 方法中,完成流形特征变换,因为 GFK 有着很好的计算高效性。GFK 的细节可以在它的原始文献中找到,我们下面介绍它的基本思想。

在学习流形特征变换时,MEDA 试图用 d 维子空间来对数据领域进行建模,然后将这些子空间嵌入到流形 G 中。用 Ss 和 St 分别表示源域和目标域经过主成分分析(PCA)之后的子空间,则 G 可以视为所有的 d 维子空间的集合。每一个 d 维的原始子空间都可以被看作 G 上的一个点。因此,在两点之间的测地线 {Φ(t):0≤t≤1} 可以在两个子空间之间构成一条路径。

如果我们令 Ss=Φ(0) ,St=Φ(1) ,则寻找一条从 Φ(0) 到 Φ(1) 的测地线就等同于将原始的特征变换到一个无穷维度的空间中,最终减小域之间的漂移现象。这种方法可以被看作是一种从 Φ(0) 到 Φ(1) 的增量式"行走"方法。特别地,流形空间中的特征可以被表示为 z=Φ(t)Tx 。从文献中可以知道,变换后的特征 zi 和 zj 的内积定义了一个半正定(positive semidefinite)的测地线流式核(GFK)。

 

 

因此,通过,在原始空间中的特征就可以被变换到 Grassmann 流形空间中。核 G 可以通过矩阵奇异值分解来有效地计算。然后,我们将会进行自适应分布适配,最终在 Grassmann 流形空间中学习一个域不变的分类器 f,以此来极大地减小域之间的漂移。

动态分布对齐

现存的分布适配方法通常假定边缘分布 (P) 和条件分布 (Q) 是同等重要的。然而,这种假设并不成立。例如,当源域和目标域数据本身存在较大的差异性时,边缘分布适配更重要;当源域和目标域数据集有较高的相似性时,条件概率分布适配更加重要。

因此,我们需要能够动态衡量 P 和 Q 的不同作用,而不是简单地对它们以同样的权重相加。为了达到这个目的,我们引入一个自适应因子来自适应地条件这两种分布的重要性。用形式化的语言来讲,自适应的分布适配可以被表示为:

 

 

其中,μ∈[0,1] 表示自适应因子,c∈{1,?,C} 是类别指示。Df(Ps,Pt) 表示边缘分布适配,表示对类别 c 的条件分布适配。

当 μ→0,这表示源域和目标域数据本身存在较大的差异性,因此,边缘分布适配更重要;当 μ→1 时,这表示源域和目标域数据集有较高的相似性,因此,条件概率分布适配更加重要。当 μ=0.5 时,表示将边缘分布和条件分布适配同等看待,这也是目前流行的方法的核心工作。因此,这些现有方法可能被看作是 MEDA 方法的特例。通过学习最优的自适应因子,MEDA 可以被应用于不同的迁移学习任务中。

另外,由于目标域数据 Dt 没有标签,直接评价目标域的条件概率分布 Qt=Qt(yt|zt) 是不可行的。所以我们用类条件概率 Qt(zt|yt) 秋近似 Qt,因为当样本个数足够大时,Qt(zt|yt) 和 Qt 有着很好的相似性。

为了近似 Qt(zt|yt),我们在源域 Ds 上训练一个弱分类器,然后用此弱分类器到 Dt 上进行预测,得到目标域的伪标记。这些伪标记的置信度可能不高,因此我们迭代式地修正预测结果。注意到,我们仅仅在第一轮的迭代中使用了分类器。在第一轮之后,MEDA 使用它先前的结果,自动地修正目标域 Dt 的标签。

我们用最大均值差异(Maximum Mean Discrepancy, MMD)来计算两个概率分布之间的差异性。MMD 是一种非参数化的分布估计方法,已经被广泛地应用于多种迁移学习方法。

两个概率分布 p 和 q 之间的 MMD 距离被定义为

,其中 HK 是由特征映射 ?(⋅) 所张成的再生核希尔伯特空间(reproducing kernel Hilbert space, RKHS), E[⋅] 表示嵌入样本的均值。

为了使得 MMD 与分类器 f 保持一致性,我们采用映射的 MMD 距离(projected MMD),对我们问题中的边缘分布差异按如下方式计算:

 

 

同理,条件分布差异可以被表示为:

 

 

然后,自适应分布适配可以被表示为:

 

 

值得注意的是,从技术角度上说,自适应因子 μ 并不是一个自由参数,它必须根据数据的分布来进行设定。我们在这里提供一个简单的思路和近似地估计 μ。

我们采用 A-distance 来估计不同分布之间的距离。A-distance 被定义为建立一个线性分类器来区分两个数据领域的 hinge 损失(也就是进行二类分类的 hinge 损失)。

对于边缘分布差异,我们直接计算 Ds,Dt 之间的 A-distance,将得到的结果记为 AM;对于条件分布差异,我们首先对目标域聚类成 C 个类,然后,对于两个域中来自同一个类别的数据,我们计算它们的 A-distance。我们记 AC 为所有类别之间 A-distance的 平均值。然后,自适应因子 μ 可以被估计为

这是首次对两种分布的精确估计!

学习 f 的过程不再赘述。看 paper 即可。

实验

精度

我们的方法在 Office31、Office+Caltech10、MNIST、USPS、ImageNet、VOC2007 上都取得了当前最好的效果。我们的对比方法包括了传统方法,一直到 CVPR 2017、PAMI 2017、AAAI 2018; 深度方法包括 DDC、DAN、RevGrad 等流行方法。具体实验步骤可以看文章。下面是实验结果:

 

 

对μ的估计

我们的方法是首次成功估计 μ 的!为了对比估计的精度,我们对 μ 进行了从 0 到 1,间隔 0.1 的遍历,以此为近似的最优的 μ。下面是我们的估计结果

和遍历结果对比。可以清楚地看到,我们估计的 μ 整体上和遍历结果并没有太大差异,并且还可能在精度上超过它!因为遍历的结果只是 0.1 为区间,我们可以精确地进行计算。

 

 

 

这个方法具有划时代意义,因为我们现在可以精确地知道哪部分分布更重要!

标签:

版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。

上一篇:数据科学领域你不容错过的 TOP 15 个社区

下一篇:经济学人:Python为什么是编程语言中最skr的?