孙 俏, 凌卫新
(华南理工大学数学学院,广州 510640)
迁移学习打破了传统机器学习中训练数据和测试数据服从独立同分布的这一基本假设,允许训练数据和测试数据不同分布。同时,迁移学习可以解决传统机器学习中因数据缺乏标注带来的模型泛化能力不强的问题,它的引入使得机器学习算法具有更强的应用价值。迁移学习的核心问题是如何确定源领域和目标领域的相关性,以及如何把有用的知识从源领域迁移到目标领域中去。源领域和目标领域之间的相关性越高,数据分布差异程度越小,源领域中有用的迁移知识就越多,对目标领域学习任务的帮助也就越大。如果源领域和目标领域相关性很低却仍旧强制迁移,那么,迁移后训练得到的学习器表现性能可能比未迁移的还要差,这种情况称作“负迁移(negative transfer)”。故而,研究如何合理地度量源领域和目标领域之间的相似度,依据相似度的大小选择适合的源领域进行知识迁移,对迁移学习的有效性是十分重要的。
自迁移学习的初步概念于1995年被提出[1]以来,迁移学习已经有了20多年的发展历史。目前对迁移学习的研究可以归纳为基于迁移知识如何进行迁移[2-9]、如何避免负迁移[10-12]以及迁移学习的应用[13-14]3个方面。
根据迁移方法的不同,可以将迁移学习分为实例迁移[1-4]、特征迁移[1, 5-7]和参数迁移[8-9]。实例迁移主要通过重采样或者重赋权的方法提取源领域中对目标领域学习任务有用的知识。经典的实例迁移方法包括TrAdaBoost算法[2]、TrResampling算法[3]和核均值匹配方法[4]等。特征迁移企图寻找源领域和目标领域的共享特征表示,以减小源领域和目标领域的分布差异,使用具有共享特征的源领域数据辅助目标领域的模型训练。文献[5]提出一种通过降维进行迁移学习的MMDE算法,Pan等[6]提出TCA算法,将原始特征映射到RKHS空间学习迁移知识。参数迁移把已有的模型参数迁移到目标任务的模型训练中,认为相关领域模型的参数相近。TL-SVM算法[8]把源领域SVM分类器参数值以正则项的形式增加到目标领域SVM目标函数中,以实现知识迁移。Chen等[9]提出一种基于投影模型的极限学习机参数迁移。
为了避免负迁移,Yao等[10]提出一种多源实例迁移算法MultiTrAdaBoost,卞则康等[11]提出一种基于相似度学习的多源参数迁移算法SL-MSTL,周国华等[12]对文献[8]中的TL-SVM算法进行改进,提出SATL-SVM算法,通过增加约束,理论上可以避免TL-SVM算法可能出现的负迁移问题。
目前的迁移学习研究基本建立在源领域和目标领域的相似度较高的全局约束下,对如何选择合适的源领域缺乏研究。针对这一问题,研究在进行迁移学习之前,如何选择合适的源领域用于目标领域的学习,以避免为获得最大性能提升需要多次迁移学习尝试,提升迁移学习效率,减小“负迁移”现象发生的概率。
研究在进行迁移学习时,如何自适应地从候选源领域集合DS中选择合适源领域,以避免不太理想的源领域,从而避免“负迁移”现象,提升迁移效率。
式(4)中:n=min(NT,NS(k))。距离方差越大,分布差异越大。
定义2[等级排序函数Rank(a,A)]:已知集合A,元素a∈A,函数Rank(a,A)将集合A中元素的值进行升序(或降序)排序,并输出排序后的集合中元素a所对应的位置序数,则称Rank(a,A)为等级排序函数,其中,进行升序排序的称为等级升序函数,进行降序的称为等级降序函数。
式(6)中:Rank(·,·)为等级降序函数。域间相似度序数MMD_SR的取值范围为[1,M],且为整数。当MMD_SR取最小值1时,表示其所对应的候选源领域与目标领域间的相似度最小,MMD_SR取最大值M时,所对应的候选源领域与目标领域间的相似度最大。可以得知,MMD方差距离越小,域间相似度序数越大,表明域间相似度越大,即领域间分布差异越小。
基于域间相似度序数MMD-SR,提出一种迁移学习源域自适应选择策略(MMD-SR_SDSS方法),策略的主要思想为:确定源领域数目p(p≤M)后,计算目标领域与候选源领域集合之间的相似度序数,由于相似度序数越大,分布差异越小,所以选取前p大相似度序数所对应的候选源领域作为用于迁移学习的源领域。MMD-SR_SDSS方法原理结构框图如图1所示。算法具体步骤如下:
图1 MMD-SR_SDSS算法流程框图Fig.1 MMD-SR_SDSS algorithm flow chart
1972年,中国派代表团出席了联合国第一次人类环境会议。1973年,中国首次召开了全国环境保护会议,通过了“全面规划、合理布局、综合利用、化害为利、依靠群众、大家动手、保护环境、造福人民”的环境保护方针(即32字方针),会后迅即成立了国务院环境保护领导小组并设办公室,敦促各地成立相应的环保机构,开启了以污染防治为主要目标的当代中国环保事业的历史进程。
步骤3根据式(6)计算域间相似度序数MMD_SR(DT,DS(k))。
为了验证本文所提方法的有效性和可行性,使用人工数据集、图像数据集Caltech-Office和文本数据集20NewsGroups进行实证分析。为了使数据集适用于本文设定的迁移学习场景,如特征空间相同、类别空间一致,对以上3种数据集进行了以下处理。
3.1.1 人工数据集
人工生成一个包含250个实例的二维双月形数据集作为目标领域数据集,其中正、负实例各一半。在目标领域数据的基础上,分别运用旋转和平移两种方法构造具有不同分布差异的候选源领域数据集:①将目标领域数据顺时针旋转不同的度数并加上高斯噪声构成不同的候选源领域数据集;②将目标领域数据平移不同的坐标单位并加上高斯噪声构成不同的候选源领域数据集。使用方法①得到的原始数据散点图如图2所示,图2中图例标注为1代表正类,0代表负类。图2(a)为目标领域数据集,图2(b)为顺时针旋转45°并伴有高斯噪声的候选源领域数据集。人工数据集实验的详细构造参数如表1所示,其中实验组M2中的参数值(a,b)中的a和b分别表示目标领域数据向X轴正方向和Y轴正方向平移的单位坐标量。
图2 双月形人工数据集Fig.2 Double moon shaped toy dataset
表1 双月形人工数据集实验设置Table 1 Experimental setup of double moon shaped toy dataset
3.1.2 图像数据集
数据集Caltech-Office由数据集Caltech-256和Office-31中的10个公共类别标签的数据构成,包含4个不同的领域:Caltech(C)、Amazon(A)、DSLR(D)和Webcam(W)。不同领域中的图像在被拍摄过程中由于分辨率、光线、位置和背景等的不同导致分布差异。对图像抽取SURF特征,并向量化为800维的直方图特征。表2给出了该图像数据集的描述。分别以C、A、D、W为目标领域,其余3个领域为候选源领域,设置4组实验,实验组分别记为C1、C2、C3和C4。
表2 Caltech-Office数据集说明Table 2 Description of Caltech-Office dataset
3.1.3 文本数据集
20NewsGroups数据集由约2 000个新闻文档组成,选取该数据集中的两个父类:comp和rec进行实验,每个父类下有4个子类,其中每个子类约有1 000个实例,对文本数据进行特征提取得到23 453维的TF-IDF特征。将comp记为正类,rec记为负类,构造成二分类问题,分别以子类comp.sys.mac.hardware (Ch)和rec.autos (Ra)作为目标领域(记为Ch_Ra)的正类和负类,Cx_Rb、Cg_Rh、Cm_Rm作为候选源领域。实验组记为N1,数据集的具体构造参数如表3所示。
表3 20NewsGroups数据集实验设置Table 3 Experimental setup of 20NewsGroups dataset
进行如下实证分析实验:①利用实验组M1和M2验证MMD方差距离在度量领域间分布差异的有效性;②域间相似度序数MMD_SR与迁移算法准确率之间的相关性验证;③MMD-SR_SDSS方法在各经典迁移学习算法(TrAdaBoost[2]、TCA[6]、BDA[7]、MultiTraAdaBoost[10]、SL-MSTL[11])源领域选择上的有效性验证实验。迁移算法的基学习器均为1近邻算法(记为1-NN)。
为了对算法的性能作出评估,以域间相似度序数和迁移算法分类准确率等级之间的斯皮尔曼相关系数作为评价指标,斯皮尔曼等级相关系数用于估计两个变量之间的相关性,其取值范围为[-1,1],其值越大,说明变量间的相关性越高。目标领域测试集的分类准确率记为Acc,其表达式为
m=1,2,…,|Dt| (7)
式(7)中:Dt表示目标领域测试集;f(·)表示分类预测函数;ym表示x′m的真实标注。
对迁移学习准确率Acc使用定义2中的等级升序函数Rank(·,·)进行分级,得到的分类准确率等级记为R_acc,域间相似度序数和迁移算法分类准确率等级之间的斯皮尔曼相关系数记为ρ,其计算方法为
式(8)中:vi为成对变量MMD_SR和R_acc的等级差数;M为候选源领域的数目。
所有实验均通过网格搜索方式确定最优参数,采用五折交叉验证,取运行10次的实验结果均值作为分类准确率。
实验环境:Inter Core i5-8250U 1.80 GHz CPU,8.0GB RAM,Windows10 64位操作系统,Python3.6等。
表4 实验组M1下域间的MMD距离距离方差MMD方差距离及迁移准确率AccTable 4 The value of MMD distance distance accuracy Acc under experimental group M1
表5 实验组M2下域间的MMD距离距离方差MMD方差距离及迁移准确率AccTable 5 The value of MMD distance distance accuracy Acc under experimental group M2
表6 MMD_SR与迁移算法分类准确率之间的相关性 Table 6 Correlation between MMD_SR and classification accuracy of transfer learning algorithm
图3 MMD距离方差距离和域间相似度序数MMD_SR随双月形数据集分布差异的变化趋势Fig.3 The trend of MMD distance MMD variance distance and domain similarity rank MMD_SR with different distribution in double moon shaped toy dataset
次实验迁移算法最高准确率所对应的候选源领域都是域间相似度序数最大的候选源领域。这也验证了当ρ=1,即单源迁移时,MMD-SR_SDSS方法的可行性。
在实验组N1的基础上,对候选源领域进行组合,使用多源迁移算法MultiTrAdaBoost和SL-MSTL进行迁移,实验结果如表7所示。当p=2时,按照MMD-SR_SDSS方法,结合表6中实验组N1的MMD_SR排序结果,应该优先选择Cx_Rb, Cm_Rm作为源领域,即实验组N2中的迁移组合。观察表7可知,MultiTrAdaBoost在N2迁移准确率最高,SL-MSTL 算法在实验组N2的迁移准确率排第2,但是迁移效果十分接近最高准确率。当p=3时,p=M,选择全部候选源领域作为源领域。综上可知,MMD-SR_SDSS方法在迁移学习过程中确定源领域是具有有效性的。
表7 p源迁移下不同源领域组合下的迁移准确率Table 7 Accuracy of p-source transfer learning under different source domain combinations
迁移学习能有效解决目标领域数据缺乏标注的问题,极具应用价值。在进行迁移学习前,选择合适的源领域用于目标领域的学习,能避免为获得最大性能提升需要多次迁移学习尝试,提升迁移学习效率,减小“负迁移”现象发生的概率。为此,定义了一种衡量各候选源领域和目标领域相似度的度量方法:域间相似度序数MMD-SR。基于MMD-SR提出一种在候选源领域集合中自适应选择源域的策略MMD-SR_SDSS,对于p源迁移,该策略选取前p大的MMD_SR所对应的候选源领域作为源领域。通过3.3节中在人工数据集和真实数据集上的实验结果可以看出,随着分布差异的增加,迁移准确率呈下降趋势。域间相似度序数MMD_SR与迁移算法准确率之间成正相关关系。MMD-SR_SDSS方法在迁移学习过程中确定源领域是具有可行性的。
本文的不足在于:度量候选源领域与目标领域的相似度时,使用领域中的全部数据,而未对干扰信息进行筛除。因此,如何对候选源领域中的干扰信息进行筛除将是未来研究的重点之一。