MetaAlign(论文解读): Coordinating Domain Alignment and Classification for Unsupervised Domain Adaptation
在无监督域适应中,为了减轻域偏移的影响,许多方法通过对抗学习或者显示对齐统计数据来在特征空间中对齐源域和目标域。无论如何,这种域对齐的优化目标与目标分类任务的优化目标不协调,因此他们的优化下降方向可能不一致。这就会降低域对齐在提高无监督域适应性能方面的性能。在本文中研究和缓解域对齐和分类任务之间的优化不一致的问题。本文提出了一种基于元优化的策略,称为MetaAlign,分别将领域对齐目标和分类目标
MetaAlign:协调域对齐和分类以实现无监督域适应
摘要
在无监督域适应中,为了减轻域偏移的影响,许多方法通过对抗学习或者显示对齐统计数据来在特征空间中对齐源域和目标域。
无论如何,这种域对齐的优化目标与目标分类任务的优化目标不协调,因此他们的优化下降方向可能不一致。这就会降低域对齐在提高无监督域适应性能方面的性能。
在本文中研究和缓解域对齐和分类任务之间的优化不一致的问题。本文提出了一种基于元优化的策略,称为MetaAlign,分别将领域对齐目标和分类目标任务视为元学习中的元训练和元测试任务。MetaAlign鼓励以协调的方式优化这两个任务,从而在训练过程中最大化两个任务梯度的内积。
实验结果表明,在各种基于对齐的基线方法的基础上,本文方法在目标分类和目标检测任务中具有有效性。MetaAlign 有助于实现最先进的性能。
Introduction
随着深度卷积神经网络的发展,图像分类和目标检测等视觉任务得到了显著的改进。一般来说,当测试集和训练集分布相似的情况下,经过预训练的模型在测试集上表现良好。无论如何,在许多实际场景中,将这种经过预训练的模型直接应用到新领域其性能就会明显下降。训练域和测试域之间的数据特征/分布之间存在差异,这叫做领域偏移。这使得从源域中学到的知识直接迁移到目标域变得非常困难。对目标域的样本进行注释可以缓解这个问题,但既昂贵又耗时。UDA不需要对目标域进行标注,仅仅使用未被标注的目标数据,就可以将从源域上训练的模型自适应到目标域中。
当前文献中已经提出大量的UDA方法。他们主要通过学习领域不变表示来对齐源域和目标域的分布,通过直接最小化两个域的特征分布之间的差异或者采用对抗性学习来学习领域不变表示。 最小化域的特征分布差异通常在源域和目标域之间采用显示分布相似性度量来对齐域分布,例如动量距离和二阶相关性。对抗性学习借鉴了对抗网络GAN的思想,并且使用对抗性训练来学习对齐的特征表示。然而,这些对齐策略都不是专门为目标分类任务设计的,在领域对齐和目标分类任务之间缺乏协调性。在训练过程中,领域对齐的优化过程可能与目标分类任务的优化过程不一致,这可能会破坏掉目标分类任务的学习,导致目标分类的性能较差。
本文旨在解决基于对齐的无监督领域适应方法的面临的问题,即领域对齐任务与目标分类任务本身之间优化不一致的问题。本文提出一种基于元学习的方法MetaAlign,来减轻这种不一致。
解释图1b,本文将领域对齐任务和目标分类任务看作元学习方案中的两个任务,一个作为元训练任务来优化网络,另一个作为元测试任务验证同一组样本的优化效果。这两项任务的元优化鼓励以协调的方式对两者进行优化。理论分析表明,MetaAlign通过在训练过程中最大化两个任务的梯度内积来实现这种优化协调。
本文贡献:
(1)本文提出了基于UDA现有的问题:领域对齐任务和目标分类任务之间的优化不一致问题。为了解决这个问题,本文提出一种基于元优化的策略,称为MetaAlign,来减轻不一致的问题。
(2)本文提出的MetaAlign具有通用性,可以应用于各种UDA中领域对齐任务中进行目标检测和分类,在保证特征对齐能力的同时,实现领域对齐用于识别任务。
本文验证了MetaAlign在图像分类(无监督域适应和域泛化)和目标检测(无监督域适应)任务上的有效性。对于图像分类,本文在各种基于域对齐的 UDA 基线之上实现 MetaAlign。大量的实验结果证明了MetaAlign的有效性和适用性,实现了最先进的性能。
Proposal MetaAlign for UDA
问题描述:
无监督域适应(UDA)目的在于将从带有标签的源域中学到的知识迁移到没有标签的目标域中。本文主要关注目标分类任务、目标检测任务。在不失去通用性的前提下,本文以分类任务为实例描述本文的方法。
源域(共有Ns个带有标注的样本):
目标域(共有Nt个未被标记的样本):
源域和目标域共享相同的标签空间Y和K个对象类。
主流的UDA方法旨在使源域和目标域对齐来缓解域差异。一般来说。这种对齐方法不是专门为分类任务设计的,所以领域对齐的优化无法与目标分类任务的优化协调工作。因此,这可能会破坏特征的判别能力,从而阻碍获得更高的性能。
为了解决这个问题,如图 1 所示,本文引入了一种基于元优化的策略 MetaAlign,以促进领域对齐和目标分类任务本身之间的优化一致性。
本文首先描述了几个具有代表性的基于领域对齐的 UDA,我们将其用作基线。然后,引入 MetaAlign 来缓解上述优化不一致问题。
3.1. Recap of Alignment Based UDAs
基于领域对齐的UDA方法包括基于对抗性训练和基于显示分布相似性度量。对抗性训练的核心思想使训练一个域判别器用来区分目标域和源域的特征,同时训练特征网络欺骗域判别器进行领域对齐。显示分布相似性度量减少了与分布差异度量相关的域差异,例如最大均值差异、矩距离和二阶相关性。
Adversarial Domain Adaptation.
为了通过对抗性训练对齐领域分布,该方法同时优化目标分类损失Lcls和领域对齐损失Ldom。通常,该方法具有特征提取器/生成器G,对象分类器C和领域判别器D(源域为1,目标域为0)。
源域Ds中特定的目标分类损失(其中Lce为典型的交叉熵损失):
域判别器D是一个两类分类器,用来根据G的特征将目标域和源域分开。相反,G为两个域生成具有对齐分布的响应,用来欺骗D。
域分类损失:
前一项表示对所有源域样本的损失,具体来说,是对源域样本被正确识别为源域的概率的对数求和,并取负号。这意味着我们希望源域样本在D的判别中有更高的概率被识别为源域。后一项表示对所有目标域样本的损失,具体来说,是对目标域样本被正确识别为目标域的概率(即1减去被识别为源域的概率)的对数求和,并取负号。这意味着我们希望目标域样本在D的判别中有更高的概率被识别为目标域。
本文将域对齐损失定义为:两个域越不可区分,Ldom就越小。训练期间,训练D使得Ldom最大化,同时训练{G,C}使Lcls+Ldom最小化。
为了简单,本文公式中忽略了用于平衡两个损失的超参数λ,但是真实实验中保持与基线相同。
解释图2a:图2中a展示了DANN,该工作将G构建为CNN特征提取器。从两个域中提取的特征被馈送到两个任务分支C和D。GRL在梯度反向传播过程中将梯度从D反转到G,用于简化对抗性训练。本文还将DANNPE(DANN的改进变体)作为另一个强有力的基线。
Explicit Domain Alignment.
在不引入额外的域判别模块的情况下,显示域对齐方法之间减少了源域和目标域之间的分布差异。
解释图2b:MMD是一个具有代表性的分布差异度量。图2b表示带有MMD约束的UDA框架。域对齐损失为:其中Fs表示源域的特征分布。
3.2. Meta-learning to Align Lcls and Ldom
对抗性的UDA(无监督域适应)方法在多个基准测试表现出显著的性能。这些方法促进了领域对齐,减少了领域差距,从而增强了模型向目标域的可迁移性。领域对齐的优化目标是减少源域和目标域之间的特征差异。无论如何,如果没有与分类任务的明确协调,领域对齐的优化方向可能和目标分类任务的优化方向不一致。这种不一致可能会阻碍优化并且导致性能下降。
领域对齐和目标分类可以看作为两个任务。解释图3:使用Grad-CAM技术来可视化领域对齐任务的过程,显示出与预测相关的比较重要的区域,第一行表示输入的源域和目标域样本。第二行和第三行显示了基线模型和带有MetaAlign的基线模型的Grad-CAM效果。其中第二行表示从基线模型中获得的Grad-CAM,其中响应较高的区域表明,这些区域的特征对于域分类器D来说是无法区分的(因为GRL已经翻转了梯度)。Base通常在与目标对象无关的区域(可能是背景)实现对齐,或者仅在对象的小部分区域上实现对齐。一些前景目标的特征仍然没有很好的对齐,这会阻碍模型在分类上的可转移性。但是众所周知,前景物体区域对物体分类的区分力最强。如果不能对齐前景对象的特征,就会损害分类的性能。
由于领域对齐和目标分类任务分别提交给网络,导致这两个任务之间缺乏有效的交互。这两个任务的优化可能具有不同的梯度下降的方向,从而导致优化不一致。
这时就会出现一个自然的问题:如何可以轻松的将优化一致性约束纳入领域对齐和目标分类呢。
本文提出通过使用元优化策略来促进两个任务之间的优化一致性的问题。本文从MAML(Model-Agnostic Meta-Learning)中获得灵感,该方法通常将样本分为元训练和元测试两个部分,并使用元学习来训练模型,以便在利用元训练知识的情况下在元测试样本上快速学习。MLDG(元学习领域泛化)通过合成虚拟的测试域来模拟训练测试领域偏移,元优化的目标要求提升训练领域的性能同时提高测试领域的性能。
本文同样利用元优化来协调领域对齐任务和目标分类任务。与MAML、MLDG方法不同的是,本文并没有将样本分为元训练和元测试,而是将领域对齐任务和分类任务看作是同一组样本的元训练(元测试)和元测试(元训练)。
开始本文重点了!!!
UDA(无监督域适应)通过同时优化目标分类任务和领域对齐任务来实现其功能。可学习的网络参数由共享参数θ、领域对齐的参数φd、目标分类的参数φc组成。一般的优化目标可以表述(5)为:,但是该方法并没有处理两个任务的潜在优化不一致的问题。
元测试任务(目标分类)将被用于评估模型优化在元训练任务上(领域对齐)的影响,总体元优化目标表述(6)为:其目的是同时优化元训练任务的损失Ldom和更新参数后的元测试任务的损失Lcls。该公式是通过调整共享参数θ和分类参数φc使分类损失最小化,同时调整领域对齐参数φd,使领域对齐损失最大化,尽可能减少源域和目标域之间的差异。为了减轻计算的复杂性,本文在梯度反向传播中省略了高阶的计算。
这种元优化使两个任务之间能够实现显示交互。使用一阶泰勒展开式来近似更新后的分类损失Lcls。表述(7):
与一般的优化目标方程(5)相比,(7)中增加的最后一项最大化了∇θLcls和∇θLdom的点积,促进了两个任务的优化方向的一致性。通过这种方式,领域对齐和目标分类以一种协调的方式进行了优化。本文的方法称为MetaAlign,他将领域对齐任务和目标分类任务与元优化策略进行对齐。
在公式(7)中,本文对两个任务共享的参数进行了一致性约束。实际上,CNN中的不同层学习着具有不同语义的特征。直观的说,在对齐两个任务的优化时,应该对他们进行不同的处理,某些层的优化一致性可能比其他层更重要。因此本文提出自适应地学习不同层的重要程度,以便更好的优化。具体来说,将各层划分为M组(例如,ResNet的每个卷积块作为一个组),并学习m个组的标量权重βm。优化目标表述为(8):其中θm代表m个组的参数。为了避免琐碎的解决方案,本文在标量权重中添加了L1约束:。
训练:实践过程中,本文迭代地选择领域对齐和目标分类任务中的一个作为元训练任务,而另一个作为元测试任务。算法1中表示了领域对齐任务和目标分类任务分别作为元训练和云测试任务。另一种情况与该情况类似。
Conclusion
本文指出基于对齐的UDA中领域对齐任务和目标分类任务之间的优化不一致的问题。为了缓解这个问题,本文提出了一种基于元优化的策略,称为Meta-Align,将这两个任务其中一个看作元训练任务,另一个看作元测试。对Meta-Align的优化目标的分析表明,这两个任务以协调的方式进行优化。实验结果也表明了Meta-Align适用于各种基于对齐的UDA的分类和检测任务。
开放原子开发者工作坊旨在鼓励更多人参与开源活动,与志同道合的开发者们相互交流开发经验、分享开发心得、获取前沿技术趋势。工作坊有多种形式的开发者活动,如meetup、训练营等,主打技术交流,干货满满,真诚地邀请各位开发者共同参与!
更多推荐
所有评论(0)