4.2 分布差异的度量
承接上一节的内容,即迁移学习的核心是找到迁移过程中源域和目标域的相似性。那么这种相似性应该如何刻画?从迁移学习的问题定义出发,答案呼之欲出:通过对源域和目标域不同的概率分布建模来刻画二者的相似性。
在迁移学习问题中,源域和目标域的联合概率分布不同,即
Ps(x,y)≠Pt(x,y) (4.2.1)
数据分布的不同使得传统的机器学习方法并不能直接应用于迁移学习的问题。因此,迁移学习要解决的核心问题便是:源域和目标域的联合分布差异度量。
如何度量联合分布的差异?回看我们手头已有的条件:源域数据,目标域数据。对于有标记的源域数据,我们是可以直接计算其联合概率分布的;而无标记的目标域数据则成了烫手山芋:只能计算其边缘分布Pt(x),无法计算其条件和联合分布。那么怎么办呢?
概率学的基本知识告诉我们,联合概率和边缘概率、条件概率之间具有一些数学上的关系:
P(x,y)=P(x)P(y|x)=P(y)P(x|y). (4.2.2)
因此,如果能利用上述基本公式对问题加以改造、变形、近似,是不是就可能对其进行求解了呢?
事实也是如此。进行迁移学习时,由于目标域没有标签,导致目标域的联合数据分布难以被表征,因此,大多数工作往往采用一些特定的假设来完成迁移。
4.2.1 百花齐放的迁移学习分布度量
根据公式(4.2.2)中描述的边缘概率、条件概率、联合概率的性质,按照由特殊到一般、由易到难的逻辑,我们可以大致将迁移学习的方法进行如下分类:
• 边缘分布自适应(Marginal Distribution Adaptation,MDA)
• 条件分布自适应(Conditional Distribution Adaptation,CDA)
• 联合分布自适应(Joint Distribution Adaptation,JDA)
• 动态分布自适应(Dynamic Distribution Adaptation,DDA)
看到这里,读者可能被这些莫名其妙的名词搞得有些焦头烂额,这是很正常的,我们一个一个地来攻破它们。为了便于理解,我们在图4.1中呈现了边缘分布、条件分布、联合分布的图示,让读者对数据分布有一个形象的认识。显然,当目标域是图4.1所示的目录域I时,应该优先考虑边缘分布;而当目标域是图4.1所示的目录域II时,应该优先考虑条件分布。
图4.1 源域和不同分布情况的目标域图示
边缘分布自适应方法的本质与自变量漂移一样,针对的问题是源域和目标域的边缘概率分布不同,即Ps(x)≠Pt(x)的情况。自变量漂移同时假设二者的条件概率分布相同,即Ps(y|x)≈Pt(y|x)。在这个假设的前提下,边缘分布自适应方法的目标是减小源域和目标域的边缘概率分布的距离,从而完成迁移学习。也就是说,边缘分布自适应方法用源域和目标域之间的边缘分布距离来近似二者之间的联合分布距离,即
D(Ps(x,y),Pt(x,y))≈D(Ps(x),Pt(x)). (4.2.3)
发表于ICML 2019的工作[Zhao et al.,2019]从理论上证明了仅减小源域与目标域的边缘分布差异是不够的。当然,这是自条件分布自适应方法提出后才得到证明的。这些方法被[Wang et al.,2018a,Zhu et al.,2020b]等工作在算法层面得到了验证。条件分布自适应方法的目标是减小源域和目标域的条件概率分布的距离,从而完成迁移学习。其与自变量漂移的假设刚好相反,即源域和目标域的边缘概率分布相同,而条件概率分布不同:Ps(x)≈Pt(x),Ps(y|x)≠Pt(y|x)。在这个前提下,条件分布自适应方法用源域和目标域之间的条件分布距离来近似二者之间的联合分布距离,即
D(Ps(x,y),Pt(x,y))≈D(Ps(y|x),Pt(y|x)). (4.2.4)
联合分布自适应方法[Long et al.,2013]做出了更一般的假设,其目标是减小源域和目标域的联合概率分布的距离,从而完成迁移学习。特别地,由于联合分布无法直接进行度量,因此,联合分布自适应方法用源域和目标域之间的边缘分布距离和条件分布距离之和来近似二者之间的联合分布距离,即
D(Ps(x,y),Pt(x,y))≈D(Ps(y|x),Pt(y|x))+ D(Ps(x),Pt(x)). (4.2.5)
动态分布自适应方法[Wang et al.,2020,Wang et al.,2018b]提出,边缘分布自适应和条件分布自适应并不是同等重要的。该方法能够根据特定的数据领域,自适应地调整分布适配过程中边缘分布和条件分布的重要性。准确而言,动态分布自适应方法通过采用一种平衡因子μ来动态调整两个分布之间的距离:
其中μ∈[0,1]表示平衡因子。当μ→0,表示源域和目标域数据本身存在较大的差异性,因此,边缘分布适配更重要;当μ→1时,表示源域和目标域数据集有较高的相似性,因此,条件分布适配更加重要。综合上面的分析可知,平衡因子可以根据实际数据分布的情况,动态地调节每个分布的重要性,并取得良好的分布适配效果。
4.2.2 分布差异的统一表征
这些方法的假设与问题退化的形式如表4.1所示。表中的D(·,·)函数表示一个分布距离度量函数,这里我们暂时认为它是给定的。
表4.1 迁移学习中的概率分布差异方法与假设
从表中可以清晰地看出,随着假设的不同,问题退化形式也是不同的。从边缘分布自适应到最近的动态分布自适应,研究者们对于迁移学习中的概率分布差异的度量的认知和探索也在不断地发展。显然,上述表格告诉我们,动态分布自适应的问题退化形式更为一般,通过改变μ的值,动态分布自适应可以退化为其他方法:
1. 令μ=0,则退化为边缘分布自适应方法。
2. 令μ=1,则退化为条件分布自适应方法。
3. 令μ=0.5,则退化为联合分布自适应方法。
图4.2(a)的结果清晰地显示出,在不同数据集构造的5个迁移任务上(图中的U → M,B → E等5个任务),最优的迁移效果并不总是对应于固定的μ值。这清晰地说明了在不同的任务中,我们需要通过μ的机制,对边缘分布和条件分布进行自适应估计,从而可以更好地近似源域和目标域的联合概率分布差异。另外,平衡因子μ并没有呈现出显著的变化规律,这促使我们开发有效的方法以便对μ进行精确估计。
图4.2 分布自适应因子μ
因此,我们可以基于动态分布自适应方法来研究迁移学习的分布差异问题。所以问题来了,这个参数μ应该如何计算?
4.2.3 分布自适应因子的计算
我们注意到,可以简单地将μ视为一个迁移过程中的参数,通过交叉验证(cross-validation)来确定其最优的取值μopt。然而,在本章的无监督迁移学习问题定义中,目标域完全没有标记,故此方式不可行。有另外两种非直接的方式可以对μ值进行估计:随机猜测法和最大最小平均法。随机猜测法从神经网络随机调参中得到启发,指的是任意从[0,1]区间内选择一个μ的值,然后进行动态迁移,这并不算是一种技术严密型的方案。如果重复此过程t次,记第t次的迁移学习结果为rt,则随机猜测法最终的迁移结果为。最大最小平均法与随机猜测法相似,可以在[0,1]区间内从0开始取μ的值,每次增加0.1,得到一个集合[0,0.1,···,0.9,1.0],然后,与随机猜测法相似,也可以得到其最终迁移结果。其中,分母的值11由此区间内所有值的数量计数得出。
然而,尽管上述两种估计方案有一定的可行性,但它们均需大量的重复计算。另外,上述结果并不具有可解释性,其正确性也无法得到保证。
笔者及团队在2018年的多媒体领域顶级会议ACM Multimedia上提出了上述动态迁移方法,并给出了首个对μ值的精确定量估计方法[Wang et al.,2018b,Wang et al.,2020]。该方法利用领域的整体和局部性质来定量计算μ(计算出的值用来表示)。采用 [Ben-David et al.,2007]作为基本的度量方式。被定义为建立一个二分类器进行两个不同领域的分类得出的误差。从形式化来看,定义ϵ(h)作为线性分类器h区分两个领域的误差,则可以被定义为
直接根据上式计算边缘分布的,将其用dM来表示。对于条件分布之间的,用dc来表示对应于类别c的条件分布距离。它可以由式进行计算,其中分别表示来自源域和目标域的第c个类的样本。最终,μ可以由下式进行计算:
图4.2(b)的结果表明,相比其他几种估计方法,所提出的对μ的估计达到了最优的迁移效果。由于特征的动态和渐近变化性,此估计需要在每一轮迭代中给出。边缘分布和条件分布的定量估计对于迁移学习研究具有很大的意义。当然,选择的距离不同,计算μ的方式也有所不同。期待未来能有更多更精确的估计方法。在后来的工作中,动态分布自适应的方法又被扩展到了深度网络[Wang et al.,2020]、对抗网络[Yu et al.,2019a]、人体行为识别应用[Qin et al.,2019]中,取得了更好的效果。