负迁移综述

570 阅读15分钟

原文链接

由于隐私安全和标记成本等问题经常会导致目标域内的标记数据不足,因此迁移学习被用于将一个或多个源域的知识用于优化目标域的模型学习中。然而,这种迁移并不是一直有效的,有时候利用源域的数据和知识甚至可能降低目标域的学习性能,称之为负迁移。负迁移问题也成为了迁移学习中一个长期存在并有挑战性的问题,这篇文章主要总结探讨了现有的应对负迁移一些方法及其优劣之处。

简介

传统机器学习的一个常见假设就是:训练数据和测试数据拥有相同的分布。然而在现实应用中,这种假设并不一定能成立。例如两个图片数据集可能包含不同光照条件下不同分辨率的照相机拍出的图片;不同的人在脑机接口方面可能表现出明显的差异。因此,根据这些数据集训练出来的模型可能泛化能力很差。

一个常用的解决办法是根据测试数据重新采集大量的标记数据并训练模型,然而现实是这可能很难实现,因为高标记成本或个人隐私问题等。

一个更好的解决办法就是迁移学习,或可称为领域适应。但是迁移学习并不总是奏效的,它需要满足一下条件:

  1. 学习任务在源和目标领域内是相近或相似的
  2. 源和目标领域内是数据分布不能差距太大
  3. 需要找到一个合适的模型同时适用于两个领域

违背这些前提条件可能会导致负迁移:即引入了源域的知识反而导致目标领域的学习性能下降,如图1所示。 image.png

这篇文章系统性地介绍了负迁移的研究进展和相关技术。

背景知识

首先介绍一些迁移学习的相关符号、定义、分类和导致负迁移的相关因素。

符号和定义

设置一个KK分类的分类器,带有输入特征空间X\mathcal{X}和一个输出标记空间y\mathcal{y},假设我们能够访问一个标记源域S={(xSi,ySi)}i=1ns\mathcal{S}=\{(x_S^i,y_S^i)\}^{n_s}_{i=1},源自PS(X,Y)P_{\mathcal{S}}(X,Y),且XX,YYX\subseteq \mathcal{X},Y\subseteq \mathcal{Y}。目标域包括两个子数据集T=(Tl,Tu)\mathcal{T}=(\mathcal{T}_l,\mathcal{T}_u),且Tl={(xjl,yjl)}j=1nl\mathcal{T}_l=\{(x_j^l,y_j^l)\}^{n_l}_{j=1}由来自PT(X,Y)P_{\mathcal{T}}(X,Y)nln_l个标记样本构成,且Tu={xuk}k=1nu\mathcal{T}_u=\{x^k_u\}^{n_u}_{k=1}由来自PT(X)P_{\mathcal{T}}(X)nun_u个样本构成。主要符号如表1所示: image.png

在迁移学习中,根据源和目标域(即ST\mathcal{S} \neq \mathcal{T})的不同可以分成以下几种情况:

  • 特征空间不同:XSXT\mathcal{X}_\mathcal{S} \neq \mathcal{X}_\mathcal{T}
  • 标记空间不同:YSYT\mathcal{Y}_\mathcal{S} \neq \mathcal{Y}_\mathcal{T}
  • 两个域的边际概率分布不同:PS(X)PT(X)P_\mathcal{S}(X)\neq P_\mathcal{T}(X)
  • 两个域的条件概率分布不同:PS(YX)PT(YX)P_\mathcal{S}(Y|X)\neq P_\mathcal{T}(Y|X)

这篇综述主要关注后两个不同点,假设源和目标域共享新相同的特征和标记空间。迁移学习致力于设计一个学习算法θ(S,T)\theta(\mathcal{S},\mathcal{T}),使用源和目标域中的数据/信息来输出一个假设hh作为目标域的映射函数,带有一个很小的预期损失ϵT(h)=Ex,yPT(X,Y)[l(h(x)),y]\epsilon_ \mathcal{T}(h)=\mathbb{E}_{x,y \sim P_\mathcal{T}(X,Y)}[l(h(x)),y],此处的ll为一个目标域损失函数。

迁移学习分类

可见之前写是迁移学习综述

负迁移

Rosenstein等人首次通过实验发现了负迁移现象。Wang等人给出了一个负迁移的数学定义并提出了NTG(negative transfer gap)来确定负迁移是否发生:

定义1(NTG):令ϵT\epsilon_\mathcal{T}为目标域内的测试错误,θ(S,T)\theta(\mathcal{S},\mathcal{T})为源和目标域间的迁移学习算法,且θ(0,T)\theta(\mathcal{0},\mathcal{T})为相同的算法但不使用源域信息。当ϵT(θ(S,T))>ϵT(θ(0,T))\epsilon_\mathcal{T}(\theta(\mathcal{S},\mathcal{T}))>\epsilon_\mathcal{T}(\theta(\mathcal{0},\mathcal{T}))时,证明负迁移发生了,负迁移的严重程度由NTG来度量:

NTG=ϵT(θ(S,T))ϵT(θ(0,T))NTG=\epsilon_\mathcal{T}(\theta(\mathcal{S},\mathcal{T}))-\epsilon_\mathcal{T}(\theta(\mathcal{0},\mathcal{T}))

显然,当NTG为正时负迁移发生,然而NTG并不是一直有效,例如在无监督的情况下,由于缺少标记目标域数据,ϵT(θ(0,T))\epsilon_\mathcal{T}(\theta(\mathcal{0},\mathcal{T}))是无法计算的。

负迁移的因素

Ben-David给出了一个迁移学习的理论边界:

ϵT(h)ϵS(h)+12dHΔH(Xs,Xt)+λ\epsilon_{\mathcal{T}}(h) \leq \epsilon_{\mathcal{S}}(h)+\frac{1}{2}d_{\mathcal{H}\Delta\mathcal{H}}(X_s,X_t)+\lambda

此处,ϵT(h),ϵS(h)\epsilon_{\mathcal{T}}(h),\epsilon_{\mathcal{S}}(h)表示假设hh在源域和目标域的预期误差,dHΔH(Xs,Xt)d_{\mathcal{H}\Delta\mathcal{H}}(X_s,X_t)表示两个域之间的域差异,λ\lambda表示针对问题的特定常数。基于这个公式,负迁移包含四个因素:

  1. 域差异:显然,源和目标域之间的差异是造成负迁移的根源,迁移学习方法没有考虑降低差异问题,无论是在特征、分类器还是目标输出级别都可能导致负迁移这个结果。
  2. 迁移算法:一个安全的迁移算法理论上应保证在使用辅助信息时目标域的学习性能会更好,或者算法必须经过细心的设计来提升辅助领域的可迁移性,否则就可能产生负迁移。
  3. 源数据质量:源数据质量直接决定了转移知识的质量,若源数据是不可分割的或噪声过多则分类器训练时则可能变得不可信。有时候为了隐私安全,源数据可能会被转换成预训练模型,而一个过拟合或欠拟合的源领域模型同样可能造成负迁移。
  4. 目标数据质量:目标领域数据可能会噪声过大或不稳定,从而造成负迁移。

可靠的迁移学习

图2展示了作者提出的一个可靠迁移学习的方案,一个考虑减轻或避免负迁移的现有的代表性方法。 image.png

方案中使用了领域相似性估计的方法,若相似性过低则不迁移或远程迁移,若相似性不高也不低则执行负迁移缓解策略,若相似性高则直接迁移知识。

安全迁移

安全迁移通过目标函数设计避免负迁移,即迁移函数需要比不迁移时表现更好,如表2所示,仅有很少量的安全迁移方法,其中一些是针对分类问题另一些针对回归问题。 image.png

针对分类的安全迁移

Cao等人提出了一个贝叶斯自适应学习方法,根据两个任务的相似度来自动调整迁移模式。它假设源和目标数据服从一个带半参数转移核KK的高斯分布:

Knmk(xn,xm)(2eζ(xn,xm)ρ1)K_{nm} \sim k(x_n,x_m)(2e^{-\zeta(x_n,x_m)\rho}-1)

此处的kk是一个有效核函数,若xn,xmx_n,x_m来自同一领域则ζ(xn,xm)=0\zeta(x_n,x_m)=0,否则ζ(xn,xm)=1\zeta(x_n,x_m)=1。参数ρ\rho表示源和目标域之间的不同程度,通过假设高斯分布Γ(b,μ)\Gamma(b,\mu)中(其中b,μb,\mu是从两个域的一些标记样本中推断出形状和尺度参数)的ρ\rho,可以定义:

λ=2(11+μ)b1\lambda = 2(\frac{1}{1+\mu})^b-1

其决定了两个域的相似度和什么可以被迁移。例如,当λ\lambda接近于0的时候,两个域之间关联性很低,因此只有核函数的参数kk能被迁移。

Jamal等人提出了一个深度人脸检测自适应方法来避免负迁移,通过最小化下面的损失函数:

minμ,θ~[λ2u22+Etmaxyt{0,1}(RESt(w+u,θ~))]\min_{\mu,\tilde{\theta}}[\frac{\lambda}{2}||u||^2_2+\mathbb{E}_t \max_{y_t \in \{0,1\}}(RES_t(w+u,\tilde{\theta}))]

此处的ww为源探测器的分类器权重,uu为根据源探测器来约束目标探测器的偏移权重,,θ~,\tilde{\theta}为目标特征抽取器的参数值,REStRES_t为通过预训练源人脸检测器来学习目标检测器产生的相对性能损失,在优化后为负值。因此通过这个损失函数可以保证目标检测器不会比源检测器差。

Li等人提出了一个安全弱监督学习(SAFEW)方法,用于半监督域适应。假设存在目标假设hh^*,它通过源域中的多个基学习器构建,即h=i=1Mαihih^*=\sum^M_{i=1}\alpha_ih_i,其中{hi}i=1M\{h_i\}^M_{i=1}为带α=[α1;...;αM]0\alpha=[\alpha_1;...;\alpha_M]\geq0MM个源模型。其目标是学习一个预测值hh使其相较于基线h0h_0有最大化的增益,它仅在标记的目标数据上训练,通过优化下面的目标函数:

maxh minαM  l(h0,i=1Mαihi)l(h,i=1Mαihi)\max_{h}\ \min_{\alpha \in M}\ \ l(h_0,\sum^M_{i=1}\alpha_ih_i)-l(h,\sum^M_{i=1}\alpha_ih_i)

SAFEW通过优化最坏情况的性能来避免负迁移。

针对回归的安全迁移

Kuzborskij和Orabona介绍了一类正则化最小二乘法算法(RLS),通过正则化来避免负迁移。原始的RLS算法解决下面的优化问题:

minw1ni=1n(wTxiyi)2+λw2\min_w \frac{1}{n}\sum^n_{i=1}(w^Tx_i-y_i)^2+\lambda||w||^2

在得到优化源假设h()h'(\cdot)之后,构建了一个训练集{xi,yih(xi)}i=1n\{x_i,y_i-h'(x_i)\}^n_{i=1}并生成负迁移假设:

hT(x)=TC(xTw^T)+h(x)h_{\mathcal{T}}(x)=T_C(x^T\hat{w}_{\mathcal{T}})+h'(x)

此处的TC(y^)=min(max(y^,C),C)T_C(\hat{y})=min(max(\hat{y},-C),C)为一个截断函数用于将输出限制于[C,C][-C,C]中,且:

w^T=argminw1ni=1n(wTxiyi+h(xi))w+λw2\hat{w}_{\mathcal{T}}=arg \min{w} \frac{1}{n}\sum^n_{i=1}(w^Tx_i-y_i+h'(x_i))^w+\lambda||w||^2

Kuzborskij和Orabonaz证明了当源域和目标域无关时,该方法等价于在目标域上单独训练RLS。

基于上述的方法,Yoon和Li提出了一个优化迁移学习算法,它假设源参数服从一个正态分布,且优化下面的损失函数:

minwlTl(w;b)+βR(w)+λN(w;μw,Σw)\min_{w}l{\mathcal{T}_l}(w;b)+\beta\mathcal{R}(w)+\lambda N(w;\mu_w,\Sigma_w)

此处的ww为模型参数,R(w)\mathcal{R}(w)为一个正则化项用于控制模型的复杂程度,N(w;μw,Σw)N(w;\mu_w,\Sigma_w)为一个正则化项用于在多变量高斯分布中约束ww,其中均值μw\mu_w和方差Σw\Sigma_w从源域中计算。他们发现当λ\lambda过大时会出现负迁移,因此提出了一个优化规则来选取权重λ\lambda从而消除有害源域的影响。

域相似度估计

域相似度(或者叫可迁移性)估计是可信迁移学习中一个非常重要的模块,如图2所示。现有的估计方法可以分成三类:基于特征统计、基于测试性能和基于微调,如表3所示: image.png

基于特征统计

原始的特征表示和其一阶或高阶同济,如均值或方差,是度量域分布差异的重要输入。在域差异度量中有三个重要的方法,最大均值差异(MMD)、相关系数和KL-差异。

MMD可能是在传统迁移学习中应用最广泛的方法,具体介绍可见链接

相关系数法指通过来自不同分布内两个高维轨迹向量间的相关性来度量分布差异。域可迁移性估计(DTE)通过类间和域间的散布矩阵(将协方差矩阵乘以系数得到的矩阵,作用和协方差矩阵一致)来评估源域和目标域间的可迁移性:

DTE(S,T)=SbS1SbS,T1DTE(\mathcal{S},\mathcal{T})=\frac{||S^\mathcal{S}_b||_1}{||S^{\mathcal{S},\mathcal{T}}_b||_1}

其中,SbSS^\mathcal{S}_b为源域中类间散布矩阵,SbS,TS^{\mathcal{S},\mathcal{T}}_b为域间散布矩阵,且1||\cdot||_1表示1-范数。

KL-差异是两个概率分布间的非对称度量。Gong等人提出过一个域的排列方法(ROD),它通过计算主要角度间的对称KL-差异加权平均值来对源域和目标域间的相似度进行排序。

基于测试性能

域相似度可以通过测试性能来度量,若源域分类器在标记目标域数据中测试的性能很好,说明两个域非常相似。显然,这个方法需要目标域中存在一定的标记数据,使用范围有限。

基于微调

域相似度可以通过微调来度量,该方法常用于深度迁移学习中,用于将源域的深度学习模型用于目标域中,主要方法是通过固定其较低层参数和重新调整较高层参数。

通常,这些方法将目标域数据输入基于源域训练的神经网络中,通过输出来确定域相似度。Nguyen等人提出了log预期经验预测(LEEP),它可以从一个带有nln_l个标记目标数据的源模型θ\theta中计算得到:

T(θ,D)=1nli=1nllog(zZP^(yiz)θ(xi)z)T(\theta,\mathcal{D})=\frac{1}{n_l}\sum^{n_l}_{i=1}log(\sum_{z\in Z}\hat{P}(y_i|\mathcal{z})\theta(x_i)_{\mathcal{z}})

此处的P^(yiz)\hat{P}(y_i|\mathcal{z})为通过模型θ\theta预测的在真实目标标记yiy_i下得到的虚拟目标标记zz的经验条件分布(训练集频数与样本总和的比值)。T(θ,D)T(\theta,\mathcal{D})表示预训练模型θ\theta对于目标领域D\mathcal{D}的可迁移性,为负条件熵(NCE)测度的上界。(负条件熵度量从源域到目标域的信息量,以评估源域的可转移性)

远程迁移

当源域和目标域相似性很低时,迁移学习并不容易实施。远程迁移学习(也叫传递迁移学习),它通过一个或多个中间域来连接源域和目标域,可用于解决一些难题。

负迁移缓解

在源域和目标域有一定相似性的问题中,可以通过一些方法来缓解负迁移的影响,如表4所示,包括增强数据的可迁移性、增强模型的可迁移性和增强目标的预测性等。 image.png

数据可迁移性增强

源域数据的可迁移性可以通过增强数据质量如在域级、实例级和特征级的粗粒度到细粒度等方法增强。

域级可迁移性增强

当有多个源域时,有选择性地聚合和目标域最近似的源域,或对所有源域做加权聚合,可能能得到更好的学习性能。因此域选择/权重被用于缓解负迁移。

之前提到的度量域相似度的方法同样可以用到多源域的情况,Wang和Carbonell等人使用MMD度量域间相似度,他们首先对每个源域训练分类器,之后根据目标域的预测结果对分类器进行加权,每个分类器的权重是由源域和目标域基于MMD的近似程度,即其和其他源域间的可迁移性度量来决定的。

ZUO等人提出了一种基于注意力的域识别模块用于估计域相关性,从而降低不近似域造成的影响,其核心思想是当存在多个源域时重新组合实例标签使其能够同时区分每个类和域。它重定义源标签为Y^s,i=Ys,i+(i1)×K\hat{Y}_{s,i}=Y_{s,i}+(i-1)\times K,并根据原始特征训练了一个域识别模型。对于第i个域其学习权重是:

wi=j=1ntsign(dj^,i)ntw_i=\frac{\sum^{n_t}_{j=1}sign(\hat{d_j},i)}{n_t}

ntn_t为一个批处理中的标记图像编号,sign(,)sign(\cdot,\cdot)为一个sign函数(取正负),dj^\hat{d_j}为一个目标实例xjx_j的域标签,通过分析域识别模型预测。

实例级别可迁移性增强

实例选择\权重也经常用于迁移学习和负迁移缓解中。

Seah等人提出了一个预测分布匹配(PDM)正则化器来剔除不相关的源域数据,它通过迭代推断出未标记的目标域数据的伪标签,并保留高可信度的标签。最后用剩下的源域数据和伪标记目标域数据来训练一个SVM或逻辑回归分类器。

主动学习(Active learning)可用于选择最有用的未标记数据用于标记,也可用于选择最合适的源样本。Peng等人提出来主动迁移学习,它通过选择类平衡和选择目标域中最近似的来优化选择源样本,可同时实现最小化MMD和缓解负迁移。

实例权重同样用于深度迁移学习中控制负迁移。Wang等人提出了一个鉴别门(discriminator gate)实现对抗性自适应和源样本的类级加权。他们通过鉴别门的输出来估计每个特定特征点上两个域的分布密度比。

特征级可迁移性增强

一个常用的方法是学习一个共同的潜在特征空间,其中来自不同领域的特征会变得更一致。

Long等人提出了双重迁移学习来自动区分共同和领域特定潜在因素,其核心思想是找到一个能够最大程度帮助目标域内分类的潜在特征空间,并将其表示为一个带有三个因子的非负矩阵优化问题:

minU0,US,H,VS0XS[U0,US]HVST\min_{U_0,U_S,H,V_S \geq 0}||X_S-[U_0,U_S]HV_S^T||

XSX_S为源域的特征矩阵,U0,USU_0,U_S为共有特征集群和领域特有特征集群,VSV_S是一个样本集群分配矩阵,HH是一个关系矩阵,通过最小化不同领域间的关系分布可以实现最优化知识迁移。

另一方面的重要工作是用于深度迁移学习中用于特征表示学习时的特征可迁移性增强。 Yosinski等人基于特征的对其训练领域的独特性和普遍性定义了特征的可迁移性。

不幸的是,只专注于提高特征的可移植性可能会导致较差的可辨别性,为了减轻负迁移的影响,需要同时考虑特征的可转移性和可辨别性(即降低噪声)。Xu等人提出了一个利用稀疏矩阵对在无监督迁移学习中建模特征噪声的方法。

模型迁移增强

模型迁移增强的方法包括:迁移标准化(TransNorm)和对抗鲁棒训练(adversarial robust training)等。

TransNorm减少了批处理标准化中的域移位,它通常用于卷积层之后。

对抗鲁棒训练提高模型对对抗性实例的鲁棒性,可见链接

目标预测增强

迁移学习常用于带少量标记样本和大量未标记样本的目标领域中,和半监督学习类似,伪标签在迁移学习中被用于这些未标记样本。软伪标法、选择性伪标法和聚类增强伪标法可用于缓解负迁移。(关于伪标签的介绍

软伪标法将每个未标记样本以不同的概率分配到不同的类别,而不是直接指定某个类别,以减轻来自弱源分类器的标签噪声。

选择性伪标法是另一种增强目标预测的策略,其核心思想是选高置信度的未标记数据作为训练目标。

聚类增强伪标法基于软伪标法,但更进一步探索了无标签聚类信息用以增强目标领域预测。