方法
目标是解决单域泛化问题:模型仅在一个源域 S S S中训练,但要求在许多未见过的目标域 T T T上泛化良好。受到许多最近成就的启发[36,56,24],这个具有挑战性的问题的一个有希望的解决方案是利用对抗训练[11,49]。关键思想是学习一个抗分布外扰动的鲁棒模型。更具体地说,我们可以通过解决最坏情况问题来学习模型[44]:
min θ sup T : D ( S , T ) ≤ ρ E [ L t a s k ( θ ; T ) ] , ( 1 ) \min_{\theta}\sup_{\mathcal{T}:D(\mathcal{S},\mathcal{T})\leq\rho}\mathbb{E}[\mathcal{L}_{\mathrm{task}}(\theta;\mathcal{T})], (1) θminT:D(S,T)≤ρsupE[Ltask(θ;T)],(1)其中 D D D是测量域距离的相似性度量, ρ ρ ρ表示 S S S和 T T T之间的最大域差异。θ是根据任务特定目标函数 L t a s k L_{task} Ltask优化的模型参数。理解:( min θ \min_{\theta} minθ) 表示我们要最小化的是关于参数 ( θ \theta θ) 的某个函数。( sup T : D ( S , T ) ≤ ρ \sup_{\mathcal{T}:D(\mathcal{S},\mathcal{T})\leq\rho} supT:D(S,T)≤ρ) 表示在所有满足某个条件的训练集 ( T \mathcal{T} T) 上取最大值。这里的( D ( S , T ) D(\mathcal{S},\mathcal{T}) D(S,T)) 表示两个数据分布之间的距离,而 ( ρ \rho ρ) 是一个给定的阈值。( E [ L t a s k ( θ ; T ) ] \mathbb{E}[\mathcal{L}_{\mathrm{task}}(\theta;\mathcal{T})] E[Ltask(θ;T)]) 表示在训练集 ( T \mathcal{T} T) 上关于参数 ( θ \theta θ) 的某个损失函数的期望值。总的来说这个公式的意义是:要找到能够最小化在所有满足某种数据分布距离约束条件下的训练集上的某个损失函数的期望值的参数 ( θ \theta θ)。这种形式的优化问题在对抗性训练或者用于泛化保证时可能会经常出现。在这里,我们关注使用交叉熵损失的分类问题:
L t a s k ( y , y ^ ) = − ∑ i y i log ( y ^ i ) , ( 2 ) \mathcal{L}_{\mathrm{task}}(\mathbf{y},\hat{\mathbf{y}})=-\sum_{i}y_{i}\log(\hat{y}_{i}), (2) Ltask(y,y^)=−i∑yilog(y^i),(2)其中 y ^ \mathbf{\hat{y}} y^为模型的softmax输出; y \mathbf{y} y是表示真类的one-hot向量; y i y_i yi和 y ^ i \hat{y}_i y^i分别表示 y y y和 y ^ \hat{y} y^的第 i i i维。
根据最坏情况公式(1),我们提出了一种新的方法,基于元学习的对抗域增强(M-ADA),用于单域泛化。图2概述了我们的方法。在第3.1节中,我们通过利用对抗性训练来增强源域,创建了“虚构”但“具有挑战性”的域。在Wasserstein自动编码器(WAE)的帮助下,任务模型从域增强中学习,这放宽了第3.2节中的最坏情况约束。我们在如3.3节所述的学会学习的框架下组织任务模型和WAE的联合训练,以及领域增强过程。最后,在第四节给出了最坏情况保证的理论证明。
对抗性域增强
我们的目标是从源域创建读个增强域。增强域要求与源域在分布上不同,以模拟不可见的域。此外,为避免增强域发散,还应满足式(1)中定义的最坏情况保证。为了实现这一目标,我们提出了对抗性域增强。
为了实现这一目标,我们提出了对抗性域增强。我们的模型由任务模型和WAE组成,如图2所示。在图2中,任务模型由特征提取器 F : X → Z F: X →Z F:X→Z映射图像从输入空间到嵌入空间,和一个分类器 C : Z → Y C: Z →Y C:Z→Y用于从嵌入空间预测标签。设 z z z表示由 z = F ( x ) z = F(x) z=F(x)得到的 x x x的潜在表示。总体损失函数的表达式为:
L A D A = L t a s k ( θ ; x ) ⏟ Classification − α L c o n s t ( θ ; z ) ⏟ Constraint + β L r e l a x ( ψ ; x ) ⏟ Relaxation , ( 3 ) \mathcal{L}_{\mathrm{ADA}}=\underbrace{\mathcal{L}_{\mathrm{task}}(\theta;\mathbf{x})}_{\text{Classification}}-\alpha\underbrace{\mathcal{L}_{\mathrm{const}}(\theta;\mathbf{z})}_{\text{Constraint}}+\beta\underbrace{\mathcal{L}_{\mathrm{relax}}(\psi;\mathbf{x})}_{\text{Relaxation}}, (3) LADA=Classification
Ltask(θ;x)−αConstraint
Lconst(θ;z)+βRelaxation
L