一文读懂领域迁移与领域适应的常见方法

栏目: IT技术 · 发布时间: 4年前

内容简介:©PaperWeekly 原创 · 作者|Chen单位|追一科技AI Lab研究员

一文读懂领域迁移与领域适应的常见方法

©PaperWeekly 原创 · 作者|Chen

单位|追一科技AI Lab研究员

研究方向|领域迁移、领域适应

一文读懂领域迁移与领域适应的常见方法

领域迁移问题的背景及描述

在使用机器学习、人工智能中的技术手段解决实际问题的时候,常常会遇到领域迁移(domain shift)问题。 具体地说,领域迁移是指用于训练的源数据集与用于预测和推断的目标数据集 的分布不一致,即:

一文读懂领域迁移与领域适应的常见方法

这里的分布不一致有多种情况:

a) 可能是数据分布不一致,即,这种情况可能发生在线上数据随着时间的迁移发生了变化,即使我们还有相同的标签 Y,但是数据 X 的分布已经发生了变化。

例如很多流行语的变化导致相同的词句随着时间变化产生了不同的含义,或者是单纯增加了很多新的表达方式(不知不觉笔者到了群里聊天还要搜索下他们说的网络流行语是什么意思的年纪了);

b) 也有可能是标签分布不一致,即,这种情况有可能发生在随着业务的进行,对数据集的标签进行了扩充。一个业务刚上线的时候,类别划分可能比较粗糙,但是随着其他配套设施功能的升级,对相同数据的类别划分进行了扩充。

例如某业务在一开始的时候,「修改密码」是单独的意图,即在模型看来是一个类别;而随着业务逻辑的调整,这个意图被拆分为「修改交易密码」与「修改登录密码」两种更加细分的意图。这时数据还是一样的,但是类别的划分方法发生了变化;

c) 还有可能是数据和标签分布都不一致,即,这种情况下很多时候就是一个典型的迁移学习的问题。

例如新来业务数据较少,如果直接用着少量数据训练模型,那么就很可能会影响用户体验以及模型的效果,这时可以考虑拿一些与其相关的公开数据集来辅助训练,帮助我们新业务在较少的数据情况下产生一个较为不错的结果。

在以上这些情况下,如果单纯的使用人工标注去应对新来数据或者新来标签的话,不仅成本很高,而且效率也很低。在这些情况下,我们可以使用领域适应的方法来解决问题。

一文读懂领域迁移与领域适应的常见方法

领域适应的核心理论

在我们学习机器学习的过程中,会遇到很多“开山鼻祖“类的文章,这类文章的一个特点就是提供了一种全新的解决问题的角度和方法体系,之后的很多论文都是在其基础上或修改、或改进、或借用其核心看待问题的角度。

例如谷歌大脑在论文 Attention Is All You Need (Vaswani et al., 2017) 中提出了 Transformer 结构,之后很多预训练模型(GPT, BERT, BERT-WWM, ROBERTA, ALBERT, XLNET)都借用了这一结构。

所以学习这类“开山鼻祖”类文章就显得尤为重要了,一方面可以帮助我们更快的理解新的文章(类似 git 的思想,只要在一个模版上记不同文章的差异即可)。

另一方面也可以帮我们更深入的理解同一类型文章,并且将它们在我们的脑海或者笔记本中串联(GPT 是 Transformer Decoder, BERT 是 Transformer Encoder)。

所幸,今天将被介绍的这个领域也有这样一篇“开山鼻祖”,那就是我们接下来要介绍的 (Ganin et al., 2016; Ben-David et al., 2010) 等人的工作。

这里我们跟随 (Ganin et al., 2016) 等人的工作对领域适应的核心理论进行探究,这一核心理论可以看作是之后一系列论文方法的方法论,也可以很大程度上帮助我们串联之后的文章,建立相应的知识体系。

承接上文,假设有源领域以及目标领域,为了描述简单,这里只考虑模型有两个标签输出 (0, 1),为了量化的衡量两个领域的差距, (Ben-David et al., 2010) 提出了 H- 散度(H-divergence),具体地:

一文读懂领域迁移与领域适应的常见方法

其中,η(x) 是一个基于源领域(source domain)训练的分类器。

从上述公式可以看出,H- 散度的提供了一种量化描述不同领域差异的方法,即用其中一个领域的数据训练出来的分类器,在两个领域上预测结果,其结果的差异作为这两个领域差异的上界(Upper Bound)。

具体地,如果两个领域的差别越大,那么H-散度的值就会越大,反之亦然。

接下来我们将使用 H- 散度来表示对于任意源领域(source domain)和目标领域(target domain)的误差关系。 对于给定假设空间 H 里的任意分类器 C,有:

一文读懂领域迁移与领域适应的常见方法

其中,λ 是最优分类器的误差。 从上式可以得出,为了使目标领域的预测误差

最小,我们应该让 H- 散度的值最小。

对于假设空间 H 的任意判别器 A,假设其在源领域和目标领域有误差,那么 PAD (proxy A-distance)可以定义为:

一文读懂领域迁移与领域适应的常见方法

(Ben-David et al., 2010) 证明了 PAD(proxy A-distance)其实就是 H- 散度的近似值。那么,我们要解决的模型在目标数据集上误差最小化的问题,就被转换成了使源-目标数据集判别器损失最大化的问题了。

从 H- 散度到 PAD 这一步是必不可少的,因为 H- 散度的衡量本身就有一定难度,需要两个领域一定数量的匹配数据才可以准确衡量。

通常将一个困难的问题转换成另一个近似的相对简单的问题是一种常见的解决问题的思路。 这种情况下,搭建一个判别器去区别源领域和目标领域就相对容易很多。

综上所述,要想进行领域适应(domain adaptation),使目标领域的预测误差最小,那么只要使源领域与目标领域的判别器误差最大即可。

这就是领域适应问题中有大量对抗学习论文的原因,对抗学习可以直接让源领域与目标领域别的不可分辨,从而增大其判别器的误差。

当然,其他方法的论文虽然没有直接使用对抗训练,但是大多数方法都是直接或者间接的使源领域与目标领域变得不可分辨(隐性的增大判别器误差)。

注意,这里是让源领域与目标领域变得不可分辨,而源领域内部不同标签的数据依旧可以分辨,目标领域内部同理,也就是将两个领域对应标签的数据进行了无监督的匹配。

一文读懂领域迁移与领域适应的常见方法

领域适应的常见方法

3.1 对抗学习方法

这一部分我们着重介绍使用对抗学习的思想来解决领域迁移的问题。在介绍论文之前,让我从最简单的情况开始,做一个用对抗学习解决领域适应问题的通用模版出来,也就是一个特征提取器其参数为,一个分类器其参数为,这里分类器会产生一个概率分布,一个判别器其参数为。

这里判别器对于给定数据会做二元分类,判断它是来自源数据集还是目标数据集,这里是源数据集与目标数据集的任意数据点。这里的各个方程都可以用合适的深度学习网络代替。

那么其分类损失函数则为:

一文读懂领域迁移与领域适应的常见方法

这是一个典型的交叉熵损失(cross entropy loss)。

接下来是判别器损失:

一文读懂领域迁移与领域适应的常见方法

这里值得注意的是,按照我们之前理论部分的分析,我们的特征提取器要最大化判别器的损失,也就是要对抗训练。

一般来说有这两个损失就行了,但是由于目标数据集是非监督学习,我们这里加一个熵损失(entropy loss)起一个正则作用并且加速收敛。

一文读懂领域迁移与领域适应的常见方法

公式 (3) 的损失的话会在 c(.)=exp⁡(-1)≈36.79% 取最大值,也就是最小化公式(3)会使预测的概率向着 0 或者 1 靠近,拉大不同类的边缘(margin)。

最后把公式 (1),(2),(3) 组合起来就是我们最后的目标函数,那我们有:

一文读懂领域迁移与领域适应的常见方法

这就构成了一个解决领域适应问题最简单的模版了。 后文介绍的论文基本上是在这个模型的基础上对分类器或者特征提取器进行修改,或者删除判别器但是用一些距离方法拉近源领域与目标领域的距离。

下图是一个典型的领域适应问题的效果展示图,左图是不使用领域适应的算法,右图是使用领域适应的算法。通过对抗训练,特征提取器会把源领域与目标领域对应的数据集拉近,使它们难以被判别器区分。

注意,这里的拉近不是任意点的拉近,而是源领域与目标领域对应类别数据的拉近,也就是拉近后源数据集与目标数据集仍然保持着自己内部的结构。

一文读懂领域迁移与领域适应的常见方法

下文正式介绍一些领域适应中对抗学习的方法。

一文读懂领域迁移与领域适应的常见方法

论文标题: Unsupervised Domain Adaptation with Similarity Learning

论文来源: CVPR 2018

论文链接: https://arxiv.org/abs/1711.08995

这是一篇典型的对分类器进行修改的论文。具体地:

一文读懂领域迁移与领域适应的常见方法

也就是说,对于源数据集的每个类用类内数据点算一个类中心,然后用类中心与特征提取器提出的特征算出 logits,然后用 softmax 函数算出概率。

这篇论文最大的亮点就是其分类器的灵活性,使用了类似标签编码(label embedding)的方法,也就是说我们完全可以替换掉 μ_c 的部分,使 μ_c=g(label) 这里 g(.) 是论文里的类别特征提取器,而 label 就是我们假定的目标领域含有的标签,然后直接去算概率分布即可。

这篇论文剩下的部分与上边公式 (4) 的结构基本一致,只要将公式 (4) 中的分类器损失替换一下就好。

一文读懂领域迁移与领域适应的常见方法

论文标题: Drop to Adapt: Learning Discriminative Features for Unsupervised Domain Adaptation

论文来源: ICCV 2019

论文链接: https://arxiv.org/abs/1910.05562

代码链接: https://github.com/postBG/DTA.pytorch

这是一篇典型的对特征提取器作修改的论文。作者引入了 EAdD (Element-wise Adversarial Dropout)和 CAdD (Channel-wise Adversarial Dropout)。

其核心观点就是通过在特征提取器上加上一个 dropout 来使得提取出来的特征变化最大。具体示意图如下所示。

一文读懂领域迁移与领域适应的常见方法

接下来我们具体介绍下这篇文章的做法。

一文读懂领域迁移与领域适应的常见方法

公式 (5) 中,是指随机 dropout (random dropout),而 m 就是我们的目标 dropout,D[a,b] 这里并不是一个判别器,而是指 a, b 两个概率分布的差异(divergence)。

公式 (6) 中的是在约束条件下使得分布差异最大化的dropout 值。公式 (7),(8) 就是论文里计算分布差异的方法,用了 KL 离散度(Kullback-Leibler divergence)。

注意这里分别计算了目标领域在特征提取器和分类器上的离散度。作者这么做的原因是通过 dropout 掉一些目标领域的相对不影响分类器结果的特征,留下核心特征,使得分类器产生更加一致的结果,从下图看就是改变了模型的决策边界(decision boundary)。

具体地,下图里实线代表了源数据集,虚线代表了目标数据集,(a) 图是不做领域适应的结果,很明显,决策边界直接穿过了目标领域,(b) 图是做了领域适应的结果,主要是对特征提取器和分类器做了 dropout。

(c) (d) 代表了我们做了 dropout 使得特征提取器和分类器中不能提高分类准确率的部分被抹掉,从而改变了特征分布,改变了模型的决策边界。

一文读懂领域迁移与领域适应的常见方法

接下来我们看下完整的目标函数:

一文读懂领域迁移与领域适应的常见方法

整体上和我们一开始的所说模板目标函数的公式 (4) 比较类似,(9) 是对于源数据集的交叉熵损失,(10) 是这篇论文的核心观点,通过对抗训练,使得分类器在目标领域产生更加具有鲁棒性和一致性的结果。

(11) 是公式 (3) 介绍的熵损失(entropy loss),(12) 类似于公式 (10),不过是从输入层面加入了扰动。

一文读懂领域迁移与领域适应的常见方法

论文标题: Transfer Learning with Dynamic Adversarial Adaptation Network

论文来源: ICDM 2019

论文链接: https://arxiv.org/abs/1909.08184

代码链接: https://github.com/jindongwang/transferlearning/tree/master/code/deep/DAAN

这是一篇典型的对判别器做修改的论文。作者在原有的源-目标判别器(source-target domain discriminator)的基础上加入了局部领域判别器(local subdomain discriminator)。

也就是对于每一个类去判断其是来自源数据集还是目标数据集,然后用一个动态对抗因子(dynamic adversarial factor)去动态调节两者损失的比例。

具体地:

一文读懂领域迁移与领域适应的常见方法

其目标函数还是我们标准的形式,是源数据集的交叉熵损失,后边的分别是全局和局部的判别器损失,w 是动态对抗因子。

一文读懂领域迁移与领域适应的常见方法

交叉熵和全局判别器损失很常规这里就不介绍了。

局部领域判别器是这篇论文新引进的,假设有 C 的类那么这是我们就会有 C 个子判别器,每个子判别器的输入是数据的特征与该数据是该类别的概率的乘积。具体公式如下:

一文读懂领域迁移与领域适应的常见方法

下图是模型具体的结构。

一文读懂领域迁移与领域适应的常见方法

接下来分析一下动态对抗因子(dynamic adversarial factor)的计算,首先定义全局 A- 距离(global A-distance)和局部 A- 距离(local A-distance)。

一文读懂领域迁移与领域适应的常见方法

可以看到其实这个距离和之前在理论部分介绍的 PAD (proxy A-distance)非常相似,和对应的判别器损失成反比,这两个距离也是用来测量源数据集与目标数据集离散度的。

一文读懂领域迁移与领域适应的常见方法

从动态对抗因子(dynamic adversarial factor)的计算公式可以看出,当 w 接近 0 时,全局判别器损失相对比较大,我们的模型也会倾向于给全局判别器损失一个相对较大的权重。

所以这种情况下可以动态的分配权重给全局判别器损失以及局部判别器损失,这样更加全面的考虑了数据的分布,有些时候可能源数据集与目标数据集整体比较好分辨(全局判别器损失小),w 接近 1,那么模型会更多的去学习局部判别器损失,让局部判别器去区分源数据集与目标数据集。

一文读懂领域迁移与领域适应的常见方法

论文标题: Transferable Curriculum for Weakly-Supervised Domain Adaptation

论文来源: AAAI 2019

论文链接: https://caozhangjie.github.io/files/TCL19.pdf

代码链接: https://github.com/thuml/TCL

上边三篇分别从分类器,特征提取器,判别器的角度做了创新,接下来我们介绍一篇从数据角度进行探究的论文,而且,这篇不再是非监督学习而是一篇半监督学习的文章。

在介绍之前我们先简单了解下课程学习 (curriculum learning),课程学习的一个特点就是给训练集中的每个样本一个权重,从而让模型先去学习简单的样本(权重大的样本),然后去学习复杂的样本(权重小的样本),进而模拟人类的学习过程,先学习简单的再去学习困难的,这里对简单还是复杂的判断一般由该样本的损失大小来决定。

具体地:

一文读懂领域迁移与领域适应的常见方法

在领域适应问题中,也存在这相似的问题, 我们希望源数据集中能更好的迁移到目标数据集的数据在训练过程中获得更大的权重,反之亦然 。这就引出了下面要说的文章。

具体地,把课程学习中给给不同数据不同权重的方法用在一开始介绍的对抗学习标准模版上即可(标准模版是指上文的公式 (1) - (4))。 那么这么做的主要难点就是如何设置权重更新,找到源数据集中容易迁移到目标数据集的数据。

具体地:

一文读懂领域迁移与领域适应的常见方法

这些就是最开始说的对抗学习模版里的交叉熵损失,熵损失,判别器损失,论文的创新点在于对每个源数据集的数据都加了独一无二的权重代表其迁移性。接下来我们分析下权重 w 的构建方法,具体如下:

一文读懂领域迁移与领域适应的常见方法

通过公式我们可以看出来,权重w会给那些容易学习已经容易迁移的数据以高的权重,即越小,证明这个样本越容易学习,而 越小,证明该样本越不容易被判别器判别出来,也就是它的迁移性越好。

领域适应问题中的对抗训练方法我们就介绍到这里,总体来说对抗训练的方法是最契合我们理论分析部分结果的,即通过对抗训练增大判别器损失来缩小 PAD 值进而缩小 H- 散度,使目标数据集预测误差最小化。

上边我们介绍的文章分别对模版公式 (1) 到 (3) 的分类器,判别器,特征提取器以及数据权重等方面进行了探究,为我们提供了改进模型的几种思路。

总体而言,笔者最喜欢 Unsupervised Domain Adaptation with Similarity Learning 这篇论文。

如下图所示,很多领域适应文章的方法在源数据集与目标数据集降维后都会有类似的效果(源数据集与目标数据集相应类别匹配在一起),而且很多时候源数据集与目标数据集是要共享分类器的,也就是说一般情况下,领域适应文章中,源数据集要比目标数据集有相同或者更多的类别。

而这篇文章其实就给我们提供了另一种可能性,即目标数据集可以比源数据集有更多的类别,类似于类编码(label embedding)的思想。

我们将各种类别编码算相似度,某种程度上可以拓展迁移类别的数量。这个领域当然还有很多优秀的论文本文没有涉及,如果读者感兴趣可以自行查阅。

一文读懂领域迁移与领域适应的常见方法

接下来,我们简单介绍一些领域适应问题中的其他方法 (非对抗学习的方法),以及领域迁移检测的一些方法。

3.2 其他方法

一文读懂领域迁移与领域适应的常见方法

论文标题: Asymmetric Tri-training for Unsupervised Domain Adaptation

论文来源: ICML 2017

论文链接: https://arxiv.org/abs/1702.08400

代码链接: https://github.com/ksaito-ut/atda

这篇论文放弃了对抗训练的思想,而是引入了伪标签的方法来打分。相比直接打伪标签的方法,这篇论文使用了两个网络来一起打伪标签,只把目标数据集中两个网络给相同预测标签的数据(并且其预测标签概率大于一定阈值,例如0.9)拿出来训练目标数据集的分类器。

具体网络图如下:

一文读懂领域迁移与领域适应的常见方法

是两个用来打分的网络,而是仅用打了伪标签的目标数据集来训练的。

下图是很常规的交叉熵损失。

一文读懂领域迁移与领域适应的常见方法

这篇文章虽然与之前的文章看上去差别很大,但是其实也遵循了最开始介绍的理论部分。整体对抗训练体系的论文是把源数据集与目标数据集变得不可分辨,将两个数据集的数据进行聚类。

而这篇的方法是用打伪标签和卡阈值的方法,找出目标数据集中与源数据集分布相近的样本,并且用这些样本去训练一个关于目标数据集的分类器,相比让两个数据集的数据 不可分辨,选择了那份本身就不可分辨的数据出来。

具体效果如下图:

一文读懂领域迁移与领域适应的常见方法

相比之前的对抗训练,这种方法下数据的聚类效果差一点,原因是打伪标签的方法本身并不是很可靠,在下文介绍领域迁移检测的时候会具体提到。

一文读懂领域迁移与领域适应的常见方法

论文标题: Deep Asymmetric Transfer Network for Unbalanced Domain Adaptation

论文来源: AAAI 2018

论文链接: http://pengcui.thumedialab.com/papers/DATN.pdf

下面介绍的这篇文章是一篇典型的基于距离的文章,先看下图的模型结构图。可以发现模型分为两部分,左边是标准的自编码器,由于这个不是我们这篇文章的重点就不介绍了。

重点介绍下右边的部分,也就是如何在现在这种半监督自编码器中加入领域适应和匹配。但是这种适配是有代价的,那就是它除了源数据集的监督数据和目标数据集的非监督数据之外,还需要一些两个领域的匹配数据。

一文读懂领域迁移与领域适应的常见方法

我们首先来看下它的匹配损失:

一文读懂领域迁移与领域适应的常见方法

这里Z是相应数据神经网络某层的隐向量。不得不说这个损失是比较粗暴的,就是简单的将两个数据集中配对的数据的特征算一个距离并且把这个距离最小化,其中 G 是映射方程。

一文读懂领域迁移与领域适应的常见方法

接下来是一个转移损失,也就是将目标数据集中的数据通过映射方程 G 映射到源数据集,用源数据集的分类器进行分类,计算损失。这么做的目的是通过知识更加丰富的源数据集分类器去帮助更好的区别目标数据集中的特征。

一文读懂领域迁移与领域适应的常见方法

接下来又是一个粗暴的基于距离的非监督损失,用来拉近源数据集与目标数据集特征向量分布的距离。(这里应该是把z看做了高斯分布,那么z的均值就是高斯分布的中心,但是没有考虑方差)。

一文读懂领域迁移与领域适应的常见方法

最后整个目标函数就是前边几项加起来加上一个正则项。这篇文章的优点是本身模型就融合了一个自编码器的模型进去(上图左边),这样本身就有一个半监督的学习(当然可能换成一个 Semi-VAE 可能效果更好些),又加上了领域适应。

缺点就是后边的领域适应需要两个领域配对的数据,这个在实际生产实践过程中可能就会比较麻烦。

一文读懂领域迁移与领域适应的常见方法

论文标题: Minimal-entropy Correlation Alignment for Unsupervised Deep Domain Adaptation

论文来源: ICLR 2018

论文链接: https://arxiv.org/abs/1711.10288

代码链接: https://github.com/pmorerio/minimal-entropy-correlation-alignment

接下来,介绍一个数学上比较优雅的方法去解决领域适应的问题:源-目标特征相关性对准(source-target domain correlation alignment)。

这类方法的核心想法是在保留特征内部细微区别的情况下(分类器依然可以识别不同类别的特征),将两个领域的特征分布拉近(例如拉近了两领域特征的协方差矩阵)。

先看一下简单的相关性对准,之后再去介绍作者提出的方法,具体地:

一文读懂领域迁移与领域适应的常见方法

因为论文假设我们的目标数据集是没有标签的,所以作者决定从特征维度进行对准。上边的公式整体上比较熟悉了,交叉熵加上一个源数据集与目标数据集的协方差对准。

我们具体看下这里协方差是怎么来的。具体如下,A 其实就是模型的隐向量(通常是分类层前的一层),而 J 是一个可以学习的中心矩阵。

一文读懂领域迁移与领域适应的常见方法

这个做法其实是将源数据集和目标数据集随机 batch 的特征向量协方差靠近。但是这个做法有个明显的弊端,就是协方差都是对称正定的,那么直接计算欧几里得距离是不能完全抓住数据内部分布的,例如下图所示。

一文读懂领域迁移与领域适应的常见方法

为了解决这个问题作者引入了 log- 欧几里得距离(log-Euclidean distance):

其中,U,V 分别是 的特征向量矩阵,是对应的特征值。剩下的部分和之前的就一致了。

不得不说这个模型相比之前的那些模型就优雅很多,而且也可以轻松的加在其他模型里验证其效果。

一文读懂领域迁移与领域适应的常见方法

领域迁移检测方法

在上文中,我们对于领域适应中比较主流的对抗学习以及一些其他方法进行了介绍。接下来,我们简单介绍一些领域迁移检测的方法。领域迁移检测主要是用来衡量两个领域的差异的,而检测的结果可以用来决定我们是否需要进行领域适应的工作。

例如,如何判断训练线上预测模型的源数据集与此时线上实时数据是否发生了迁移。我们需要一些确定的指标来衡量这一差异,这样才能及时的时候领域适应技术来解决领域迁移的问题。

一文读懂领域迁移与领域适应的常见方法

论文标题: To Annotate or Not? Predicting Performance Drop under Domain Shift

论文来源: EMNLP 2019

论文链接: https://www.aclweb.org/anthology/D19-1222.pdf

这篇论文介绍了三种用来检测领域迁移的方法,让我们一一看下吧。

4.1 基于H-散度的方法

一文读懂领域迁移与领域适应的常见方法

PAD 是我们的老朋友了,我们之前就介绍过,它本身就是用来衡量两个数据分布的偏离程度的,所以用它来检测领域迁移也很正常。

但是有一个问题就是需要提前训练一个判别器,并且还需要有相应的两个领域的数据集,这就一定程度上限制了这种方法的使用。

4.2 基于置信度的指标

基于置信度的指标是种很常见的方法,在很多应用中都有涉及,例如拒识之类的。主要的动机就是当数据整体发生偏移之后,其原有的打分系统会混乱,导致整体概率偏移下降。除了普通的打分系统,作者引入了一种新的打分方法:

一文读懂领域迁移与领域适应的常见方法

这个方法的动机是现代的深度学习网络会给不在源数据集的数据的打分并不能真实代表的分数,例如在做文本分类时,对于给定的任意一句文本,深度学习都会给出一个关于标签的概率分布。

那么理想情况下,如果这句文本不在源数据集里,那么应该产生的标签概率分布中每个标签的概率都应该很小,但是实际上,很可能模型会给一个不相关标签比较大的值。为了一定程度上缓解这个问题。

作者使用了一种校准方法,在验证集上寻找最小化损失的T,然后重新计算校准置信度打分(calibrated confidence score)。

4.3 反向分类准确率

反向分类准确率的具体做法是先用源数据集训练一个分类器,然后给目标数据集的打上伪标签,然后用打上伪标签的目标数据集重新训练一个分类器然后去查看源数据集隔离出来数据的分类准确率。

从最后的实验来看,PAD 的方法效果最优(但是需要训练一个判别器,最主要是用什么数据来训练判别器,这是个很难把控的点),置信度和反向分类准确率的方法结果差不多(整体上看的话置信度方法可能好些,与反向分类准确率效果差不多,但是更加省计算资源)。

一文读懂领域迁移与领域适应的常见方法

结语

整体来看,整个领域适应问题都是建立在 (Ben-David et al., 2010) 理论上,对我们开始模版模型(公式(1)到公式(3))的不同部分进行不同的修改以提交效果的。有兴趣的读者可以找其中感兴趣的文章进行阅读实验。

由于作者水平有限,本文错漏缺点在所难免,希望读者批评指正。也欢迎大家在评论区交流讨论。

参考文献

[1] A. Vaswani, N. Shazeer, N. Parmar, J. Uszkoreit. Attention is all you need. 2017

[2] Hady Elsahar, Matthias Galle. To Annotate or Not? Predicting Performance Drop under Domain Shift. 2019.

[3] Y. Shu, Z. Cao, M. Long, J. Wang. Transferable Curriculum for Weakly-Supervised Domain Adaptation. 2019.

[4] C. Yu, J. Wang, Y. Chen, M. Huang. Transfer Learning with Dynamic Adversarial Adaptation Network. 2019.

[5] S. Lee, D. Kim, N. Kim, S. Jeong. Drop to Adapt: Learning Discriminative Features for Unsupervised Domain Adaptation. 2019.

[6] Pedro O. Pinheiro. Unsupervised Domain Adaptation with Similarity Learning. 2018.

[7] Shai Ben-David, John Blitzer, Koby Crammer, Alex Kulesza, Fernando Pereira, and Jen- nifer Wortman Vaughan. A theory of learning from different domains. Machine Learning, 79(1-2):151–175, 2010.

[8] Y. Ganin, H. Ajakan, P. Germain, H. Larochelle, F. Laviolette, M. Marchand, V. Lempitsky. Domain-Adversarial Training of Neural Networks. 2016.

[9] K. Saito, Y. Ushiku, T. Harada. Asymmetric Tri-training for Unsupervised Domain Adaptation. 2017.

[10] D. Wang, P. Cui, W. Zhu. Deep Asymmetric Transfer Network for Unbalanced Domain Adaptation. 2018.

[11] P. Morerio, J. Cavazza, V. Murino. Minimal-entropy Correlation Alignment for Unsupervised Deep Domain Adaptation. 2018.

一文读懂领域迁移与领域适应的常见方法

点击以下标题查看更多往期内容:

一文读懂领域迁移与领域适应的常见方法 # 投 稿 通 道 #

让你的论文被更多人看到 

如何才能让更多的优质内容以更短路径到达读者群体,缩短读者寻找优质内容的成本呢? 答案就是:你不认识的人。

总有一些你不认识的人,知道你想知道的东西。PaperWeekly 或许可以成为一座桥梁,促使不同背景、不同方向的学者和学术灵感相互碰撞,迸发出更多的可能性。 

PaperWeekly 鼓励高校实验室或个人,在我们的平台上分享各类优质内容,可以是 最新论文解读 ,也可以是 学习心得技术干货 。我们的目的只有一个,让知识真正流动起来。

:memo:  来稿标准:

• 稿件确系个人 原创作品 ,来稿需注明作者个人信息(姓名+学校/工作单位+学历/职位+研究方向) 

• 如果文章并非首发,请在投稿时提醒并附上所有已发布链接 

• PaperWeekly 默认每篇文章都是首发,均会添加“原创”标志

:mailbox_with_mail: 投稿邮箱:

• 投稿邮箱: hr@paperweekly.site  

• 所有文章配图,请单独在附件中发送 

• 请留下即时联系方式(微信或手机),以便我们在编辑发布时和作者沟通

:mag:

现在,在 「知乎」 也能找到我们了

进入知乎首页搜索 「PaperWeekly」

点击 「关注」 订阅我们的专栏吧

关于PaperWeekly

PaperWeekly 是一个推荐、解读、讨论、报道人工智能前沿论文成果的学术平台。如果你研究或从事 AI 领域,欢迎在公众号后台点击 「交流群」 ,小助手将把你带入 PaperWeekly 的交流群里。

一文读懂领域迁移与领域适应的常见方法

一文读懂领域迁移与领域适应的常见方法


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

亮剑.NET

亮剑.NET

2009-3 / 55.00元

《亮剑.NET:SharePoint Server 2007开发实战》共分为8章,详细讲解了SharePoint上常见的开发任务,讲述了各种开发场景下需要了解的知识,并提供了丰富的实例。《亮剑.NET:SharePoint Server 2007开发实战》第1章为基础知识,讲述SharePoint的基本概念,基本的对象模型,代码编写注意事项,并讲解了一个集开发和部署打包为一体的项目结构的创建;第2......一起来看看 《亮剑.NET》 这本书的介绍吧!

HTML 压缩/解压工具
HTML 压缩/解压工具

在线压缩/解压 HTML 代码

JSON 在线解析
JSON 在线解析

在线 JSON 格式化工具

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码