Discriminative Adversarial Domain Adaptation读书笔记

这篇文章是AAAI2020的一篇领域自适应的文章,挺有意思的,把读书笔记和大家分享一下。
摘要:
给定源域上标记的实例和目标域上未标记的实例,无监督域适应旨在学习一种任务分类器,它可以很好地对目标进行分类。最近的进展依赖于深度网络的领域对抗训练来学习领域不变特征。但是,由于任务分类器和域分类器的分离设计会导致模式崩溃,这些方法在对齐域间特征和类别的联合分布方面受到限制。为了克服这一问题,本文提出了一种新的对抗学习方法,称为可鉴别的对抗域适应(DADA)。基于集成的分类器和域分类器,DADA有一个新颖的对抗性对象,它鼓励对任何输入实例的分类器和域预测之间保持相互抑制关系。在实际条件下,定义了促进联合分布对齐的极大极小博弈。除了传统的闭集域自适应问题外,我们还对局部域适应和openset域自适应问题进行了扩展。实验证明了我们提出的方法的有效性,并且我们在基准数据集上达到了不错的效果。
介绍:
这样的领域对抗性网络可以很大程度上减少领域差异。但是,任务分类器和域分类器的分离设计存在以下缺点。首先,特征分布只能对齐到一定的水平,因为特征提取器的模型容量足以补偿不对齐的特征分配。更重要的是,考虑到将具有高粒度性的源和目标分布对齐到类别级别的实际困难(特别是对于具有多模式结构的复杂分布),以最小化经验源风险为目标的任务分类器由于模式失效问题不能很好地推广到目标数据,特征和类别的联合分布在源域和目标域之间不能很好地对齐。
最近的一些方法通过联合参数化任务和域分类器,首次尝试着来解决上述缺点。为了进一步推进这一思路,在此分类器的基础上,本文提出了一种新的对抗学习方法——可鉴别的对抗域适应(DADA),它鼓励对于任何输入的域预测和类别预测之间能实现相互抑制。这种潜在的类别与域之间的相互抑制关系在特征与类别两个层次上来减少域差异。直观而言,这种对抗是在域鉴别输出神经元和类别输出神经元之间来实现的。
这篇文章的主要贡献包括以下三点:

  1. 我们提出了一种新的对抗式学习方法,称为DADA,用于闭集域自适应。基于一个集成的类别和领域分类器,DADA有一个新的对抗目标,鼓励对任何输入实例的类别和领域预测之间存在抑制关系,这可以促进跨领域的联合分布对齐。
  2. 为了实现更现实的局部域适应,我们通过一个可靠的类别级加权机制(称为DADA-P)来扩展DADA,该机制可以显著减少离群源实例的负面影响.
  3. 对于更具有挑战性的开放集域适应,我们通过平衡共享标签空间中的联合分布对齐与离群目标实例的分类(DADA-o)对DADA进行扩展。
    DADA:
    本文提出的DADA基本情境设置与标准域适应别无二致,也是源域样例有标注,目标域数据无标注,源域域目标域之间存在一定域差异。无监督域适应任务的基本目标是学习一个特征提取器G,希望G能提取到源域域目标域的共同特征,并能将源域上训练的源域分类器能迁移到目标域上。为了达到这样的目的,目前主流的迁移学习做法是将源域分类器损失最小化并尽可能拉近源域域目标域之间的距离。
    但是这种方法具有一些局限性:1.特征提取器具有足够的能力,在任何情况下几乎都不可能发生变化,即使边际特征分布没有很好地对齐的情况下也能具有很强的容纳力。2. 更重要的是,很难将高粒度的源和目标分布与类别级别保持一致(特别是对于具有多模式结构的复合分布),因此初始条件下在源域分类器训练得到的源域经验风险不能完美的泛化到目标域数据上。
    一个自然的想法是通过将源域分类器C与域鉴别器D集成到一个分类器F里,基本做法是将原先的源域分类器加上一个神经元输出,这个输出对应的就是域来源。
    Discriminative Adversarial Domain Adaptation读书笔记_第1张图片图一.DADA流程图,包含一个特性提取器G和一个集成的类别和域分类器F。DADA显式地在类别预测和域预测之间建立了区别性交互。

定义p(x)为F(G(x))的类概率的输出向量, 是其中的第k个元素,而条件概率向量 的第k个元素的表达式是:
Discriminative Adversarial Domain Adaptation读书笔记_第2张图片这里是什么意思呢?实际上,集成分类器F输出的是一个K+1维的向量,其中的所有元素之和为1.同时Pk+1表示的是输入样例属于目标域的可能。这样的话,如果一个样例来自于源域,此时Pk+1的输出会接近0,同时剩下的k个元素输出就类似于传统DaNN网络里面的源域分类器,所以(1)式就对于源域样例专注于分类,当样例来自于目标域时,Pk+1接近于1,而对于分类损失的输出会很小,所以通过分母除以1-Pk+1将类间概率放大。
然后,利用具有分类意识的对抗学习目标对网络进行训练
Discriminative Adversarial Domain Adaptation读书笔记_第3张图片2式的第一部分类似于一个熵最小化的表达,目的就是对所有的源域样例,能够尽可能的实现分类,同时将所有的目标域样例看作第K+1类,这样目标域样例就可以和源域样例间隔开。第二个式子目的是提取源域与目标域的共同特征,第一部分最大化相当于使源域的域标签尽可能变大,同理第二部分是使目标域的域标签尽可能变小,这样就会促使特征提取器提取来自两个域的共同特征。
λ是超参数,用来平衡分类损失和域对抗损失。但是这一对抗机制过于含蓄,为了使对抗过程更加明确,基于集成分类器F,来显式的使任何输入的K类分类输出与域鉴别器输出之间形成对抗。这种鉴别-原生相互作用是DADA促进联合分布对齐能力的基础。
可鉴别的对抗学习:
为了建立一个直接的相互作用之间的分类和域预测,我们提出了一个基于集成分类器F设计新的来源区分对抗损失,这一提出的损失函数是基于原有的二值交叉熵损失。可以写做:
在这里插入图片描述
直观的说,3式建立了对于输入样例的真实标签预测与域标签预测之间的制约关系。在源域分类器F上最小化(3)可以区分任务类别,同时将源域与目标域区分开来,而在特征提取器G上最大化(3)可以将源域与目标域对齐。
Discriminative Adversarial Domain Adaptation读书笔记_第4张图片
对于3式而言,只要保证源域分类输出大于0.5,当最小化集成分类损失时,可以提升源域样例的分类能力,同时能尽可能将源域与目标域的样例鉴别开,同时,最大化特征提取器,虽然会降低源域样例的鉴别能力,但是能够尽可能的提取两个域的共同特征。
对于可鉴别的域对抗网络,我们希望1.当对于集成分类器F,最小化损失函数时,源域目标类别时可鉴别的,且源域与目标域是有区分的,这一步是在源域类别神经元概率输出增加而源域域鉴别神经元输出减少时实现的。2.当最大化特征提取器时,源域与目标域相对齐,同时保留了鉴别性,这是在源域分类神经元概率下降,源域域鉴别神经元概率上升的时候达到的。同时为了保证源域上的所有样例均可辨别,这实际上是通过在源域数据上做K类的有监督预学习实现的,为了实现联合分布对齐,还应该为任何目标实例创建类别和领域预测之间的显式相互作用。通过将每个实例与几个最相关的类别对齐,可以缓解模式崩溃的问题,在综合分类器设计的基础上,提出了一种目标区分对抗损失算法,通过使用条件类别概率来权重域预测,其具体表达式是:
Discriminative Adversarial Domain Adaptation读书笔记_第5张图片此时,域预测向量的第K个元素是
在这里插入图片描述再辅以熵最小化以实现,其表达式是:在这里插入图片描述最终DADA的表达式就是在这里插入图片描述
(5)式相当于对于每一个batch内的第i类别对应的向量列和第K+1维组成一个B*2的矩阵,再按行做softmax归一化,这样Pk(xj)与Pk+1(xj)之和为1。(4)式包含两个部分,上半式在训练时不断最小化,目标是使Pk(xj)尽可能小,Pk+1(xj)尽可能大。这样就可以尽可能的提高模型鉴别能力,(4)式下半部分目标是适当降低域鉴别效果,提高类分辨能力,来提取共同特征。
通过优化(7),可以增强联合分布对齐。这种能力来自于更好地使用来自源域和目标域的鉴别信息。具体地说,DADA对域分类器进行约束,使其清楚地知道分类边界,从而减少不同类别之间的假对齐。通过欺骗这样一个强大的域分类器,DADA可以学习一个更好地对齐两个域的特征提取器。
局部域适应与open-set域适应:
这里将经典局部域适应与经典OpenSet域适应方法带入到现有的新对抗网络中,来对DADA进行扩展。基本就是传统的PDA和OpenSet方法的扩展。这里不再赘述。

你可能感兴趣的:(域适应,迁移学习,GAN,算法,神经网络,机器学习,python)