2.6.2 迁移学习主要技术
根据迁移学习中使用的技术,可以将迁移学习分为四类:基于实例的迁移学习、基于映射的迁移学习、基于网络的迁移学习和基于对抗的深度迁移学习。
1. 基于实例的迁移学习
基于实例的迁移学习(Instances-based Transfer Learning)是指使用特定的权重调整策略,通过为这些选定实例分配适当的权重值,从源域中选择部分实例作为对目标域中训练集的补充。它基于以下假设:尽管两个域之间存在差异,但目标域可以使用适当的权重来使用源域中的部分实例。
这种方法的基本思想是,由于源域和目标域的数据概率分布不同,那么最直接的方式就是通过一些变换,将不同的数据分布的距离拉近。根据数据分布的性质,这类方法又可以分为边缘分布自适应、条件分布自适应和联合分布自适应。边缘分布自适应方法的目标是减小源域和目标域的边缘概率分布的距离。条件分布自适应方法的目标是减小源域和目标域的条件概率分布的距离。联合分布自适应方法的目标是减小源域和目标域的联合概率分布的距离。
2. 基于映射的迁移学习
基于映射的迁移学习(Mapping-based Transfer Learning)是指将实例从源域和目标域映射到新的数据空间。在这个新的数据空间中,来自两个域的实例类似,并且适用于联合深度神经网络。它基于以下假设:尽管两个源域之间存在差异,但在精心设计的新数据空间中它们可能更相似。
在卷积神经网络中,隐藏层将学习任务映射到希尔伯特空间中,采用多核优化方法将不同域之间的距离最小化,利用深度神经网络将迁移学习能力进行了推广,以适应不同数据的分布。
3. 基于网络的迁移学习
基于网络的迁移学习(Network-based Transfer Learning)指对源域中经过预训练的局部网络(包括其网络结构和连接参数)进行重用,将其转变为目标域中使用的深度神经网络的一部分。它基于以下假设:神经网络类似于人脑的处理机制,它是一个迭代且连续的抽象过程。网络的前层可以被当作特征提取器,提取的特征是通用的。
基于网络的深度迁移学习的示意图如图2.16所示。将深度神经网络分为两部分,前一部分是与语言无关的特征转换,后一部分是与语言相关的分类器。与语言无关的特征转换可以在多种语言之间传递。一般认为浅层网络结构是与最终分类任务无关的特征变换,固定住这部分结构(网络参数不参与更新),添加新的输出层进行再训练。例如,卷积神经网络可以使用在ImageNet数据集上训练的前层,以计算其他数据集中图像的中间图像表示,对CNN进行训练以学习图像表示,这些图像表示可以在训练数据量有限的情况下有效地转移到其他视觉识别任务。另外,有研究表明,网络结构和可传输性之间,某些模块可能不会影响域内的准确性,但会影响可传递性。
图2.16 基于网络的迁移学习
4. 基于对抗的深度迁移学习
基于对抗的深度迁移学习(Adversarial-based Deep Transfer Learning)是指引入对抗性技术,该技术受生成对抗性网络(GAN)的启发,以找到适用于源域和目标域的可转移表示形式。它基于这样的假设:为了有效地进行转移,良好的代表应区别于主要学习任务,并且在源域和目标域之间不加区别。
基于对抗的深度迁移学习由于其良好的效果和较强的实用性,近年来获得了长足的发展。引入对抗技术,通过在损失函数中使用域适应正则项来转移学习以进行域适应。通过增加几个标准层和一个简单的新的梯度逆转层来进行扩展,从而适用于大多数前馈神经模型。随机多线性对抗网络利用多个特征层和基于随机多线性对抗者的分类器层,以实现深度和判别性对抗适应。领域对抗性损失使用基于度量学习的方法将嵌入推广到新任务中,以在深度转移学习中找到更易处理的特征。