本篇是迁移学习专栏介绍的第一篇论文,由CUHK的杨强教授于2010年发表在IEEE的Transactions on knowledge and data engineering上关于迁移学习的综述性论文。
Abstract
在许多机器学习和数据挖掘算法中,一个主要的假设是训练和未来的数据必须在相同的特征空间中,并且具有相同的分布。然而,在许多实际应用程序中,这种假设可能不成立。例如,我们有时在一个感兴趣的领域中有一个分类任务,但是在另一个感兴趣的领域中我们只有足够的训练数据,在另一个领域中,后者可能位于不同的特征空间或遵循不同的数据分布。
在这种情况下,如果成功地进行知识迁移,就可以避免昂贵的数据标记工作,从而大大提高学习性能。近年来,迁移学习作为一种新的学习框架应运而生。本研究的重点是分类和回顾目前迁移学习在分类、回归和聚类问题上的进展。在本研究中,我们讨论了迁移学习与其他相关机器学习技术的关系,如领域适应domain adaptation、多任务学习multitask learning、样本选择偏差sample selection bias以及co-variate shift。同时,我们也探讨了迁移学习研究中一些潜在的未来问题。
1 INTRODUCTION
数据挖掘和机器学习技术在分类、回归和聚类(如[1]、[2])等知识工程领域已经取得了显著的成功。然而,许多机器学习方法只有在一个共同的假设下才能很好地工作:训练和测试数据来自相同的特征空间和相同的分布。当分布发生变化时,大多数统计模型需要使用新收集的培训数据从头重新构建。
在许多实际应用程序中,重新收集所需的培训数据并重建模型是昂贵的,甚至是不可能的。减少重新收集培训数据的需要和努力将是一件好事。在这种情况下,知识迁移或任务域之间的迁移学习是可取的。在知识工程的许多例子中,迁移学习确实是有益的。一个例子是Web文档分类[3]、[4]、[5],我们的目标是将给定的Web文档分类为几个预定义的类别。作为Web文档分类领域的一个示例(参见,例如,[6]),标记的示例可能是与通过以前的手工标记获得的类别信息相关联的大学网页。对于新创建的Web站点上的分类任务,其中的数据特性或数据分布可能不同,可能缺少标记的培训数据。因此,我们可能无法直接将在大学网站上学到的网页分类器应用到新网站上。在这种情况下,如果我们能将分类知识迁移到新的领域,将会很有帮助。
当数据很容易过时时,可能就需要进行迁移学习。在这种情况下,在一个时间段内获得的标记数据在以后的时间段内可能不会遵循相同的分布。例如,在室内WiFi定位问题是基于之前收集到的WiFi数据来检测用户当前的位置,在大的环境下建立定位模型,校准WiFi数据是非常昂贵的,因为用户需要在每个位置标记大量收集到的WiFi信号数据。然而,WiFi信号强度值可能是时间、设备或其他动态因素的函数。在一个时间段或在一个设备上训练的模型可能会导致在另一个时间段或在另一个设备上进行位置估计的性能降低。减少重新校准的工作,我们可能希望适应本地化模式训练在一个时间段(源域)的新时期(目标领域),或适应本地化模型训练在移动设备上(源域)为新的移动设备(目标领域)[7]。
第三个例子,考虑情感分类的问题,我们的任务是自动地将对产品的评论,比如一个品牌的相机,分为正面和负面的观点。对于这个分类任务,我们首先需要收集产品的许多评论并对它们进行注释。然后,我们将使用相应的标签在评论上训练分类器。由于不同类型的产品之间的评论数据分布可能会有很大的差异,为了保持良好的分类性能,我们需要收集大量的带标签的数据,以便为每个产品训练评论分类模型。然而,这种数据数据标签过程可能非常昂贵。为了减少为各种产品注释评审的工作,我们可能需要调整一个针对某些产品的分类模型,以帮助学习其他一些产品的分类模型。在这种情况下,迁移学习可以节省大量的标记工作。
在这篇综述文章中,我们对机器学习和数据挖掘领域发展起来的用于分类、回归和聚类的迁移学习进行了全面的概述。在机器学习文献中,已有大量关于迁移学习用于强化学习的研究([9], [10])。然而,在本文中,我们只关注与数据挖掘任务更密切相关的分类、回归和聚类问题的迁移学习。我们希望透过这项调查,为数据挖掘及机器学习社群提供有用的资源。
调查的其余部分组织如下。在接下来的四部分中,我们首先给出一个总体概述,并定义一些稍后将使用的符号。然后我们简要回顾了迁移学习的历史,对迁移学习给出了统一的定义,并将迁移学习分为三种不同的设置(如表2和图2所示)。然后,在第6节中,我们回顾了当前关于负迁移的一些研究,当知识迁移对目标学习产生负面影响时,就会发生负迁移。在第7节中,我们将介绍迁移学习的一些成功应用,并列出一些已发表的数据集和用于迁移学习研究的软件工具包。最后,我们在第8节中讨论了未来的工作来结束本文。
2 OVERVIEW
2.1 A Brief History of Transfer Learning
传统的数据挖掘和机器学习算法使用统计模型对未来的数据进行预测,这些统计模型是对之前收集的带标记或未带标记的训练数据[11]、[12]、[13]进行训练。半监督分类[14]、[15]、[16]、[17]利用大量的未标记数据和少量的标记数据,解决了标记数据可能太少而无法构建好的分类器的问题。研究了不完全数据集的监督学习和半监督学习的变化;例如,Zhu和Wu[18]研究了如何处理类标签的噪声问题。Yang等人考虑了对未来样本进行额外测试时的成本敏感性学习[19]。然而,它们大多假设标记数据和未标记数据的分布是相同的。相反,迁移学习允许在训练和测试中使用的领域、任务和分布是不同的。在现实世界中,我们观察到许多迁移学习的例子。例如,我们可能会发现,学习识别苹果可能有助于识别梨。同样,学习演奏电子琴可能有助于学习钢琴。迁移学习的研究是基于这样一个事实,即人们可以智能地应用以前学到的知识,更快或更好地解决新问题。在NIPS-95““Learning to Learn”研讨会上讨论了机器学习领域中迁移学习的基本动机,该研讨会的重点是需要终生使用机器学习方法来保留和重用以前学过的知识。
1995年以来,关于迁移学习的研究以不同的名称受到越来越多的关注:learning to learn、life-long learning、knowledge transfer、inductive transfer、multi-task learning、knowledge consolidation、contextsensitive learning、knowledge-based inductive bias、meta learning、incremental/cumulative learning[20]。在这些与迁移学习密切相关的学习技术是多任务学习框架[21],它试图同时学习多个任务,即使它们是不同的。多任务学习的一种典型方法是发现可以使每个单独任务受益的常见(潜在的)特性。
2005年,美国国防部高级研究计划局(DARPA)信息处理技术办公室(IPTO) 发布了一份广泛的机构公告(BAA) 05-29,其中提出了一个新的迁移学习任务:系统识别并将在以前任务中学习到的知识和技能应用于新任务的能力。在这个定义中,迁移学习的目的是从一个或多个源任务中提取知识,并将知识应用到目标任务中。与多任务学习相比,迁移学习更关注目标任务,而不是同时学习所有的源任务和目标任务。在迁移学习中,源任务和目标任务的角色不再是对称的。
图1显示了传统学习过程和迁移学习技术之间的差异。正如我们所看到的,传统的机器学习技术试图从头开始学习每个任务,而迁移学习技术则试图在目标任务的高质量训练数据较少的情况下,将之前的一些任务的知识迁移到目标任务。
今天,迁移学习方法出现在几个顶级领域,最显著的是数据挖掘(例如ACM KDD、IEEE ICDM和PKDD)、机器学习(例如ICML、NIPS、ECML、AAAI和IJCAI)以及机器学习和数据挖掘的应用(例如ACM SIGIR、WWW和ACL) 。在给出迁移学习的不同分类之前,我们首先描述本文中使用的符号。
2.2 Notations and Definitions
在本节中,我们将介绍一些在本调查中使用的符号和定义。首先,我们分别给出了域和任务的定义。在本研究中,域由特征空间和边际概率分布两部分组成,其中。例如,如果我们学习任务是文档分类,每一项作为一个二元特征,那么是所有项向量的空间,习是对应于某些文档的第i项向量,是特定的学习样本。一般来说,如果两个域是不同的,那么它们可能具有不同的特征空间或不同的边际概率分布。
给定一个特定的域,一个任务包含两个组件:一个标签空间Y和客观预测函数(用表示),这不是观测到的,但可以从训练数据,包括对,。函数可以用来预测相应的标签,的一个新实例x。从概率的角度,可以写成。在我们的文档分类示例中,是所有标签的集合,对于一个二元分类任务, 是True或False。
为简单起见,在本次调查中,我们只考虑了一个源域和一个目标域的情况,因为到目前为止,这是文献中最受欢迎的研究工作。更具体地说,我们将源域数据表示为,其中为数据实例,为对应的类标签。在我们的文档分类示例中,DS可以是一组术语向量及其相关的true或false类标签。类似地,我们将目标域数据表示为,其中输入在中,为对应的输出。在大多数情况下,。
我们现在给出了迁移学习的统一定义。
Definition 1 (Transfer Learning)
给定一个源域和学习任务,一个目标域和学习任务,迁移学习的目的是在中帮助提高目标预测函数的学习效果,并且使用知识在和中,。
在上面的定义中,一个域是。尽管条件暗示了,。例如,在我们的文档分类示例中,这意味着在源文档集和目标文档集之间,要么两个集合的术语特性不同(例如,它们使用不同的语言),要么它们的边缘分布不同。
类似地,任务被定义为。尽管条件暗示,。当目标域和源域相同,他们的学习任务是一样的,学习问题变成了一个传统的机器学习问题。当域不同时,两者都可以:
- 特征空间在域之间是不同的
- 特征空间在域之间相同,但是边缘分布概率在域之间不同,。
例如,在我们的文档分类示例中
- 对应两组文档用不同语言描述的时间
- 可能对应源域文档和目标域文档关注不同主题的时间。
给定特定的域和,当学习任务和不同时,则两者皆为
- 域之间的标签空间不同,
- 域之间的条件概率分布是不同的,,其中,。
在我们的文档分类示例中
- 对应的情况是源域有二进制文档类,而目标域有10个类来对文档进行分类
- 对应于源文档和目标文档在用户定义的类方面非常不平衡的情况。
此外,当两个域的特征空间之间存在显式或隐式关系时,我们说源域和目标域是相关的。
2.3 A Categorization of Transfer Learning Techniques
在迁移学习中,我们主要研究三个问题:
- What to transfer;
- How to transfer;
- When to transfer.
“What to transfer”询问哪些知识可以跨领域或任务进行传输。有些知识是特定于单个领域或任务的,有些知识可能在不同领域之间是通用的,这样它们可能有助于提高目标领域或任务的性能。在发现哪些知识可以迁移后,需要开发学习算法来迁移知识,这就对应了“How to transfer”的问题。
"When to transfer"要求在什么情况下迁移技能。同样,我们感兴趣的是知道在什么情况下,知识不应该被迁移。在某些情况下,当源域和目标域不相关时,蛮力迁移可能不成功。在最坏的情况下,它甚至可能损害目标领域的学习成绩,这种情况通常被称为负迁移。目前关于迁移学习的大多数工作都集中在应该迁移什么以及如何迁移上,方法是隐式地假设源域和目标域是相互关联的。然而,如何避免负迁移是一个重要的开放性问题,在未来正受到越来越多的关注。
1)基于迁移学习的定义,我们总结了传统机器学习和各种迁移学习设置之间的关系在表1中,我们分类迁移三个子设置下学习,inductive transfer learning, transductive transfer learning 和 unsupervised transfer learning,迁移学习在源和目标域之间基于不同情况和任务。
在归纳迁移学习inductive transfer learning中,无论源域和目标域是否相同,目标任务都与源任务不同。在这种情况下,需要目标域中的一些标记数据来诱导目标域中使用的目标预测模型。此外,根据源域中标记数据和未标记数据的不同情况,我们可以将归纳迁移学习设置进一步分为两种情况:
- 源域中有大量标记的数据可用。在这种情况下,归纳迁移学习设置类似于多任务学习设置。然而,归纳迁移学习设置的目的只是通过从源任务迁移知识来实现目标任务的高性能,而多任务学习则是同时学习目标任务和源任务。
- 源域中没有标记的数据可用。在这种情况下,归纳迁移学习设置类似于自学学习设置,这是Raina等人首先提出的[22]。在自主学习环境中,源域和目标域之间的标签空间可能不同,这意味着不能直接使用源域的边信息。因此,它类似于源域中标记数据不可用的归纳迁移学习设置。
2)在transductive transfer设置中,源任务和目标任务是相同的,而源任务和目标域是不同的。在这种情况下,目标域中没有可用的标记数据,而源域中有很多可用的标记数据。此外,根据源域和目标域的不同情况,我们可以将transductive transfer设置进一步分为两种情况。
- 源域和目标域之间的特征空间不同,
- 域之间的特征空间是相同的,。但是输入数据的边际概率分布是不同的,。后一种情况下的transductive transfer设置与文本分类[23]和样本选择偏差[24]或协变量移位[25]中知识迁移的领域适应有关,其假设相似。
3)最后,在无监督迁移学习unsupervised transfer learning设置中,与归纳迁移学习设置相似,目标任务不同于源任务,但与源任务相关。然而,无监督迁移学习主要解决目标域内的无监督学习任务,如聚类、降维和密度估计[26]、[27]。在这种情况下,在训练中源域和目标域都没有可用的标记数据。
不同的迁移学习设置与相关领域的关系见表2和图2。
在上述三种不同的情境下,迁移学习的方法可以根据迁移的内容归纳为四种情况。
表3显示了这四种情况和简要描述。第一个上下文可以称为基于实例的迁移学习(或实例迁移)方法[6]、[28]、[29]、[30]、[31]、[24]、[32]、[33]、[34]、[35],它假设源域中的某些数据部分可以通过重新加权在目标域中进行学习而被重用。在这种情况下,实例重加权和重要性抽样是两种主要的技术。
第二种情况可以称为特征表征迁移方法[22]、[36]、[37]、[38]、[39]、[8]、[40]、[41]、[42]、[43]、[44]。这种情况背后的直观想法是学习目标领域的“良好”特性表示。在这种情况下,用于跨域传输的知识被编码到所学习的特性表示中。使用新的特征表示,目标任务的性能有望显著提高。
第三种情况可以称为参数迁移方法[45]、[46]、[47]、[48]、[49],它假设源任务和目标任务共享模型超参数的一些参数或先验分布。传递的知识被编码到共享的参数或先验中。因此,通过发现共享的参数或先验,可以跨任务传输知识。
最后,最后一种情况称为关系知识迁移问题[50],它处理关系域的迁移学习。此上下文背后的基本假设是源域和目标域中的数据之间存在类似的关系。因此,要传递的知识就是数据之间的关系。最近,statistical relational learning技术主导了这一领域[51],[52]。
表4显示了每种迁移学习设置使用不同方法的情况。我们可以看到,归纳迁移学习设置已经在很多研究工作中得到了研究,而无监督迁移学习设置是一个相对较新的研究课题,只在特征表征迁移案例的背景下进行研究。此外,在三种迁移学习情境中都提出了特征表征迁移问题。然而,参数迁移和关系知识迁移方法只在归纳迁移学习环境中进行研究,我们将在下面详细讨论。
3 INDUCTIVE TRANSFER LEARNING
Definition 2 (Inductive Transfer Learning)
给定一个源域和学习任务,一个目标域和学习任务,归纳迁移学习旨在帮助在提高学习目标的预测函数,在和使用知识,。(在迁移学习中是)
根据上述归纳迁移学习设置的定义,需要在目标域中使用少量标记数据作为训练数据来诱导目标预测函数。如第2.3节所述,这种设置有两种情况:
- 源域中的标记数据可用;
- 源域中有标记的数据不可用,而源域中有未标记的数据可用。在这种情况下,大多数迁移学习方法都侧重于前一种情况。
3.1 Transferring Knowledge of Instances
归纳迁移学习设置的实例迁移方法直观上很有吸引力:虽然源域数据不能直接重用,但是数据的某些部分仍然可以与目标域中的一些标记数据一起重用。
Dai等人[6]提出了一种增强算法TrAdaBoost,它是AdaBoost算法的扩展,用于解决归纳迁移学习问题。TrAdaBoost假设源和目标域数据使用完全相同的一组特性和标签,但是数据在这两个域中的分布是不同的。此外,TrAdaBoost假设,由于源域和目标域之间分布的差异,一些源域数据可能对目标域的学习有用,但有些数据可能没用,甚至可能有害。它尝试迭代地重新加权源域数据,以减少坏源数据的影响,同时鼓励好的源数据为目标域贡献更多。对于每一轮迭代,TrAdaBoost根据加权的源和目标数据训练基分类器。误差只在目标数据上计算。此外,TrAdaBoost使用与AdaBoost相同的策略更新目标域中分类错误的示例,而使用与AdaBoost不同的策略更新源域中分类错误的示例。对TrAdaBoost的理论分析也在[6]中给出。
Jiang和Zhai[30]提出了一种基于条件概率和差值的启发式方法,从源域中去除训练实例中的误导。廖等人提出了一种新的主动学习方法,利用源域数据选择待标记目标域中的未标记数据。Wu和Dietterich[53]将源域(辅助)数据集成到SVM框架中,提高分类性能。
3.2 Transferring Knowledge of Feature Representations
归纳迁移学习问题的特征表示-迁移方法的目的是寻找好的特征表示,以最小化域发散和分类或回归模型误差。对于不同类型的源域数据,寻找好的特性表示的策略是不同的。如果源域中有大量标记数据可用,则可以使用监督学习方法构造特征表示。这与[40]多任务学习领域中的共性学习相似。如果源域中没有标记数据可用,则采用无监督学习方法构造特征表示。
3.2.1 Supervised Feature Construction
归纳迁移学习设置的监督特征构造方法类似于多任务学习中使用的特征构造方法。其基本思想是学习跨相关任务共享的低维表示。此外,所学习的新表示方法还可以减少每个任务的分类或回归模型误差。Argyriou等人提出了一种用于多任务学习的稀疏特征学习方法。在归纳迁移学习设置中,通过求解一个优化问题,可以学习到共性特征,如下图所示:
式中,S和T分别表示源域和目标域的任务。是一个参数矩阵。U是一个d x d正交矩阵(映射函数),用于将原始高维数据映射到低维表示。A的(r, p)-范数定义为。优化问题(1)同时估计了模型的低维表示形式utxt、utxs和参数A。优化问题(1)可以进一步转化为等价的凸优化公式,得到有效的求解。在后续工作中,Argyriou等人提出了一种用于多任务结构学习的矩阵谱正则化框架。
Lee等人提出了一种凸优化算法,用于同时从相关预测任务的集合中学习元先验和特征权重。元先验可以在不同的任务间迁移。Jebara[43]提出用支持向量机选择多任务学习的特征。Ruckert等人设计了一种基于核的归纳传输方法,旨在为目标数据寻找合适的核。
3.2.2 Unsupervised Feature Construction
在[22]中,Raina等人提出采用稀疏编码[55],这是一种无监督的特征构造方法,用于学习更高层次的特征进行迁移学习。这种方法的基本思想包括两个步骤。在第一步中,高阶基向量,通过求解优化问题(2),对源域数据学习,如下图所示
在这个方程,的如果是一个新的表示基础输入和系数来平衡功能建设项和正则化项。在学习基向量b后,第二步对目标域数据应用优化算法(3),在基向量b的基础上学习更高层次的特征。
最后,给出了判别算法使用相应的标签来训练分类或回归模型,以便在目标领域中使用。该方法的一个缺点是优化问题(2)中在源域上学习的所谓高阶基向量可能不适用于目标域。
近年来,多种学习方法被应用于迁移学习。在[44]中,Wang和Mahadevan提出了一种基于Procrustes分析的无对应流形对齐方法,该方法可以通过对齐流形跨域传输知识。
3.3 Transferring Knowledge of Parameters
归纳迁移学习设置的大多数参数迁移方法都假定相关任务的单个模型应该共享一些参数或超参数的先验分布。本节描述的大多数方法,包括正则化框架和分层贝叶斯框架,都是为在多任务学习下工作而设计的。然而,他们可以很容易地修改为迁移学习。如上所述,多任务学习试图同时完美地学习源任务和目标任务,而迁移学习只是为了利用源域数据提高目标域的性能。因此,在多任务学习中,源数据和目标数据损失函数的权重是相同的。相反,在迁移学习中,不同领域的损失函数的权重可能不同。直观地,我们可以给目标域的损失函数赋更大的权重,以确保我们可以在目标域中获得更好的性能。
Lawrence和Platt[45]提出了一种基于高斯过程(GP)的MT-IVM算法来处理多任务学习情况。MT-IVM通过共享相同的GP先验,尝试在多个任务上学习高斯过程的参数。Bonilla等人也研究了GP环境下的多任务学习。作者建议使用任务上的自由形式协方差矩阵来建模任务间的依赖关系,其中使用GP先验来诱导任务之间的相关性。Schwaighofer等人提出将层次贝叶斯框架(HB)和遗传算法(GP)结合起来进行多任务学习。
除了迁移遗传算法模型的先验外,一些学者还提出了在正则化框架下迁移支持向量机的参数。Evgeniou和Pontil[48]将HB的思想引入支持向量机,用于多任务学习。该方法假设支持向量机中每个任务的参数w可以分解为两项。一个是关于任务的通用术语,另一个是特定于任务的术语。在归纳迁移学习中
其中,和分别为源任务和目标学习任务支持向量机的参数。是一个公共参数,和分别是源任务和目标任务的特定参数。假设为任务t的超平面,将svm扩展到多任务学习案例中,可写成:
通过求解上述优化问题,可以同时学习、和参数。
一些研究人员进一步研究了参数传递方法。Gao等人提出了一种局部加权的集成学习框架,将多个模型结合起来进行迁移学习,并根据模型s对目标域中每个测试实例的预测能力动态分配权重。
3.4 Transferring Relational Knowledge
与其他三种上下文不同,关系知识迁移方法处理的是关系域中的迁移学习问题,其中数据是非i.i.d的。并且可以用多种关系来表示,如网络数据和社交网络数据。这种方法不像传统的假设那样假定从每个域抽取的数据是独立的和同分布的。它试图将数据之间的关系从源域迁移到目标域。在此背景下,提出了统计关系学习技术来解决这些问题。
Mihalkova[50]等人提出了一种利用马尔可夫逻辑网络(mln)跨关系域传输关系知识的TAMAR算法。MLNs[56]是一种强大的形式主义,它结合了一阶逻辑的紧凑表达性和概率的灵活性,用于统计关系学习。在mln中,关系域中的实体由谓词表示,它们之间的关系用一阶逻辑表示。TAMAR的动机是,如果两个域相互关联,则可能存在连接实体及其从源域到目标域的关系的映射。例如,教授可以被认为在学术领域扮演着与工业管理领域管理者类似的角色。此外,教授和学生之间的关系类似于经理和员工之间的关系。因此,可能存在从教授到经理的映射,以及从教授与学生关系到经理与工人关系的映射。在这种情况下,TAMAR尝试使用为源域学习的MLN来帮助学习目标域的MLN。基本上,TAMAR是一个两阶段算法。在第一步中,基于加权伪对数似然测度(WPLL)构造了从源MLN到目标域的映射。第二步,通过FORTE算法[57]对目标域中的映射结构进行修正,这是一种用于修正一阶理论的归纳逻辑规划(ILP)算法。修正后的MLN可作为目标域推理或推理的关系模型。
在AAAI-2008关于复杂任务迁移学习的研讨会上,Mihalkova等人[51]将TAMAR扩展到以单个实体为中心的迁移学习设置,其中目标域中只有一个实体可用。Davis等人提出了一种基于二阶马尔可夫逻辑的关系知识迁移方法。该算法的基本思想是通过使用来自目标域的谓词实例化这些公式,以带有谓词变量的马尔可夫逻辑公式的形式发现源域中的结构规则。
4 TRANSDUCTIVE TRANSFER LEARNING
转导性迁移学习一词最初是由Arnold等人提出的,他们要求源任务和目标任务相同,尽管域可能不同。在这些条件的基础上,他们进一步要求在训练时目标域中的所有未标记数据都是可用的,但我们认为这个条件可以放宽;相反,在我们对transductive transfer设置的定义中,我们只要求在训练时看到部分未标记的目标数据,以获得目标数据的边际概率。
注意,‘transductive‘这个词有几个意思。在传统的机器学习设置中,transductive learning[59]指的是在训练时需要看到所有的测试数据,并且所学习的模型不能被未来的数据重用。因此,当一些新的测试数据到达时,它们必须与所有现有数据一起分类。相反,在我们对迁移学习的分类中,我们使用术语transductive来强调在这种类型的迁移学习中,任务必须是相同的,目标域中必须有一些未标记的数据可用。
Definition 3 (Transductive Transfer Learning)
给定一个源域和学习任务,一个目标域和学习任务,transductive transfer learning旨在帮助在提高学习目标的预测函数,在和使用知识,。(在迁移学习中是,在归纳迁移学习Inductive Transfer Learning中是)
这一定义涵盖了Arnold等人[58]的工作,因为后者考虑了域自适应,即源数据和目标数据的边际概率分布不同;即任务是相同的,但领域是不同的。
与传统的transductive learning设置类似,我们的transductive transfer学习分类方案的目的是最大限度地利用未标记的测试数据进行学习我们还假设给出了一些目标域未标记的数据。在上述对转导迁移学习的定义中,源任务和目标任务是相同的,这意味着可以通过一些未标记的目标域数据,将在源域中学习到的预测函数调整为在目标域中使用。如本节2.3、此设置可分为两种情况:
- 源域和目标域之间的特征空间不同,
- 域之间的特征空间是相同的,,但是输入数据的边际概率分布是不同的,
这类似于领域适应和样本选择偏差方面的要求。以下各节描述的大多数方法都与上面的例子(b)有关。
4.1 Transferring the Knowledge of Instances
大多数转换学习设置的实例迁移方法都是由重要性抽样驱动的。为了了解基于抽样的方法在这种情况下的重要性,我们首先回顾了经验风险最小化(ERM)[60]问题。一般来说,我们可能会想学习最优参数通过最小化模型的预期的风险,
在是一个损失函数,取决于参数。然而,由于难以估计概率分布,我们选择最小化ERM,
其中n为训练数据的大小。
在transductive transfer learning设置中,我们想通过最小化预期风险来学习目标域的最优模型,
然而,由于在训练数据中没有观察到目标域中有标记的数据,因此我们必须从源域数据中学习模型。如果,则可以通过求解下面的优化问题来学习模型,用于目标域,
否则,,我们需要对上述优化问题进行修正,学习目标域具有较高泛化能力的模型,具体如下:
因此,通过向每个实例添加不同的惩罚值,具有相应的权值,我们能学习目标领域的精确模型。此外,由于。尽管,,,导致和有差异。如果我们对每个实例,评估,我们解决了transductive transfer learning问题。
有各种各样的方法来估计。Zadrozny[24]提出通过构造简单的分类问题,独立估计项。Fan等人通过使用各种分类器来估计概率比,进一步分析了问题。Huang等人[32]提出了一种核均值匹配(KMM)算法,通过对再现核希尔伯特空间(RKHS)中源域数据与目标域数据之间的均值匹配,直接学习。KMM可以重写为下面的二次规划(QP)优化问题。
。和分别为源域数据和目标域数据的核矩阵。,,。
我们能证明[3]。使用KMM的一个优点是,它可以避免对进行密度估计,当数据集的大小很小时,这是很困难的。Sugiyama等人[34]提出了一种称为Kullback-Leibler重要性估计过程(KLIEP)的算法,该算法基于Kullback-Leibler散度的最小化,直接估计。KLIEP可与交叉验证相结合,分两步自动进行模型选择:(1)估计源域数据的权重;(2)基于重加权数据的训练模型。Bickel等人通过推导一个核-逻辑回归分类器,将这两个步骤结合在一个统一的框架中。除了样本重加权技术外,Dai等人还对传统的朴素贝叶斯分类器进行了扩展,用于转换学习问题。有关协变量偏移或样本选择偏差的重要性抽样和重新加权方法的更多信息,读者可以参考Quionero-Candela等人最近出版的一本书[29]。你也可以在ICDM-08中查阅Fan和Sugiyama关于样本选择偏差的教程
4.2 Transferring Knowledge of Feature Representations
大多数用于转换性迁移学习设置的特征表示迁移方法都是在无监督学习框架下实现的。Blitzer等人提出了一种结构对应学习(SCL)算法,该算法对[37]进行了扩展,利用目标域中未标记的数据提取出一些相关的特征,从而在域之间减小了差异。SCL的第一步是在两个域的未标记数据上定义一组主特征(主特征的个数用m表示)。然后,SCL从数据中删除这些主特征,并将每个主特征视为一个新的标签向量。可以构造m类问题。假设每个问题都可以用线性分类器求解,如下所示:
SCL可以学习一个矩阵的参数。第三步,将奇异值分解(SVD)应用于矩阵。让, (h是共享特性)的数目是矩阵(线性映射)的行左奇异向量W。最后,将标准的判别算法应用于增强特征向量的建模。增广特征矢量包含所有的原始特性附加新的共享特性。
[38]提到过,如果主特性是设计良好,那么学习映射θ编码从不同的领域之间的通信功能。尽管Ben-David和Schuller[61]实验表明SCL可以减少域之间的差异,但是如何选择主特征是困难的,并且依赖于域。在[38]中,Blitzer等人使用启发式方法为自然语言处理(NLP)问题选择主特征,例如句子的标注。在他们的后续工作中,研究人员建议使用互信息(MI)来选择主特征,而不是使用更具启发性的标准[8]。MI-SCL试图找到一些对源域中标签高度依赖的主特性。
NLP领域的迁移学习有时被称为领域适应。在这方面,Daume[39]提出了一种针对NLP问题的核映射函数,该函数将源域和目标域的数据映射到高维特征空间,并使用标准的判别学习方法训练分类器。然而,构造的核映射函数是领域知识驱动的。将内核映射推广到其他领域或应用程序并不容易。Blitzer等[62]分析了最小化源和目标经验风险凸组合的算法的一致收敛边界。
在[36]中,Dai等人提出了一种基于协聚类的算法,将标签信息跨域传播。在[63],兴等人提出了一个新颖的算法称为桥接细化正确预测的标签shiftunaware分类器对目标分布,采取混合分布的训练和测试数据为桥梁,以更好地迁移训练数据和测试数据。Ling等人在[64]中提出了一种跨域迁移学习问题的光谱分类框架,引入目标函数来寻求域内监督与域外固有结构之间的一致性。在[65]中,Xue等人提出了一种跨域文本分类算法,该算法扩展了传统的概率潜在语义分析(probabilistic hidden semantic analysis, PLSA)算法,将标签和来自不同但相关领域的未标记数据,形成统一的概率模型。这种新模型被称为topicbriplsa,简称TPLSA。
Pan等人最近提出了降维迁移学习[66]。在这项工作中,Pan等人利用最大平均差嵌入(Maximum Mean difference embedded, MMDE)方法学习一个低维空间,减少不同域之间分布的差异,用于传递学习,该方法最初是为了降维而设计的。然而,MMDE可能会受到其计算负担的影响。因此,在[67]中,Pan等人进一步提出了一种有效的特征提取算法,称为迁移成分分析(Transfer Component Analysis, TCA),以克服MMDE的缺点。
5 UNSUPERVISED TRANSFER LEARNING
Definition 4 (Unsupervised Transfer Learning)
给定一个源域和学习任务,一个目标域和学习任务,unsupervised transfer learning目的是在中帮助提高目标预测函数的学习效果,并且使用知识在和中,,不能被观测到。
根据无监督迁移学习设置的定义,在训练过程中,源域和目标域没有观测到有标记的数据。到目前为止,这方面的研究工作还很少。近年来,分别提出了自学习聚类(STC)[26]和迁移判别分析(TDA)[27]算法来迁移聚类和迁移降维问题。
5.1 Transferring Knowledge of Feature Representations
Dai等人研究了一种新的聚类问题,称为自学习聚类。自学习聚类是一种无监督迁移学习的实例,它的目标是在源域中大量无标记数据的帮助下,对目标域中的少量无标记数据进行聚类。STC试图学习跨域的公共特性空间,这有助于在目标域中进行集群。STC的目标函数如下所示。
其中和分别是源域数据和目标域数据。Z是和共享的特征空间,是两个随机变量之间的互信息。假设有三个聚类函数,其中分别是的对应聚类。STC的目标是通过求解优化问题(7)来学习:
在[26]中给出了求解优化函数(8)的迭代算法。
同样,[27]提出了一种迁移判别分析(TDA)算法来解决迁移降维问题。TDA首先应用聚类方法为目标未标记数据生成伪类标签。然后将降维方法应用于目标数据,并标记源数据以降维。这两个步骤迭代运行,以找到目标数据的最佳子空间。
6 TRANSFER BOUNDS AND NEGATIVE TRANSFER
一个重要的问题是要认识到迁移学习能力的极限。Hassan Mahmud和Ray在[68]中使用Kolmogorov复杂度分析了迁移学习的情况,证明了一些理论边界。特别地,作者使用条件Kolmogorov复杂度来测量任务之间的关联性,并在贝叶斯框架下的顺序迁移学习任务中传输适当数量的信息。
最近,Eaton等[69]提出了一种新的基于图的知识迁移方法,该方法以可迁移性为度量,将所学习的源模型集嵌入到一个图中,对源任务之间的关系进行建模。将问题映射到图中,然后学习该图上的一个函数,该函数自动确定要迁移到新学习任务的参数。当源域数据和任务导致目标域学习性能下降时,就会发生负迁移。
尽管如何避免负迁移是一个非常重要的问题,但是关于这方面的研究却很少。Rosenstein等[70]的经验表明,如果两项任务太不相似,那么蛮力迁移可能会损害目标任务的性能。已经有一些工作被用来分析任务之间的关联性和任务聚类技术,如[71]、[72],这可能有助于指导如何自动避免负迁移。Bakker和Heskes[72]采用了贝叶斯方法,其中一些模型参数为所有任务共享,另一些参数通过可以从数据中学习的联合先验分布进行松散连接。因此,数据是基于任务参数进行集群的,相同集群中的任务应该彼此关联。Argyriou等人[73]考虑了将学习任务分成小组的情况。每个组中的任务通过共享低维表示来关联,而低维表示在不同的组之间是不同的。因此,团队中的任务可以更容易地传递有用的知识。
7 APPLICATIONS OF TRANSFER LEARNING
近年来,迁移学习技术在许多实际应用中得到了成功的应用。Raina等[74]和Dai等人[36]、[28]分别提出使用迁移学习技术跨域学习文本数据。Blitzer等人提出使用SCL来解决NLP问题。在[8]中提出了SCL的扩展,用于解决情绪分类问题。Wu和Dietterich[53]提出将目标域数据不足和大量低质量的源域数据用于图像分类问题。Arnold等人提出利用转导迁移学习方法解决名称实体识别问题。在[75]、[76]、[77]、[78]、[79]中,提出了迁移学习技术,从跨时间、跨空间、跨移动设备的WiFi定位模型中提取知识,有利于在其他设置下的WiFi定位任务。卓等[80]研究了如何在自动化规划中跨领域迁移领域知识以学习关系行为模型。
Raykar等人在[81]中提出了一种新的贝叶斯多实例学习算法,该算法可以自动识别相关的特征子集,并利用归纳迁移学习多个概念相关的分类器,用于计算机辅助设计(CAD)。Ling等人在[82]中提出了一种信息理论的迁移学习方法,解决了网页英译中跨语言分类问题。该方法解决了有大量带标签的英文文本数据而只有少量带标签的中文文本文档的问题。通过设计合适的映射函数作为桥梁,实现了跨两个特征空间的迁移学习。
到目前为止,至少有两项基于迁移学习的国际竞赛,提供了一些急需的公共数据。在ECML/PKDD-2006 discovery challenge 8中,任务是处理跨相关学习任务的个性化垃圾邮件过滤和泛化。为了训练垃圾邮件过滤系统,我们需要从一组具有相应标签的用户中收集大量的邮件:spam或not spam,并根据这些数据训练分类器。对于一个新的电子邮件用户,我们可能需要为用户调整所学习的模型。挑战在于第一批用户和新用户的电子邮件分布是不同的。因此,该问题可以建模为一个归纳迁移学习问题,其目的是将旧的垃圾邮件过滤模型应用于训练数据较少、训练时间较短的新情况。
ICDM- 2007竞赛提供了第二个数据集,其中的任务是使用不同时间段获得的WiFi信号数据估计WiFi客户端的室内位置[83]。由于WiFi信号强度值可能是时间、空间和设备的函数,WiFi数据在不同时间段的分布可能会有很大的不同。因此,必须设计迁移学习来减少数据重新标记的工作。
Data Sets for Transfer Learning: 到目前为止,已经发表了几个数据集用于迁移学习研究。我们表示文本挖掘数据集、电子邮件垃圾邮件过滤数据集、WiFi随时间的定位数据集和情绪分类数据集由文本、电子邮件、WiFi和Sen。
Empirical Evaluation 为了证明与传统学习方法相比,迁移学习方法能带来多少好处,研究人员使用了一些公共数据集。我们在表5中列出了一些已发表的迁移学习论文。在[6],[84],[49]中,作者使用20组新闻组数据12作为评价数据集之一。由于不同的研究人员对算法预处理步骤的不同,很难直接对所提出的方法进行比较。因此,我们将它们分别用20-Newsgroups1、20-Newsgroups2和20-Newsgroups3表示,并将所提出的迁移学习方法与非迁移学习方法的比较结果显示在表中。
Dai等人对20组1数据进行了标准支持向量机(SVM)与TrAdaBoost算法的比较实验。在20 Newsgroups2上,Shi等[84]采用主动学习算法,使用TrAdaBoost和标准SVM选择重要的迁移学习实例(AcTraK)。Gao等人在20 Newsgroups3上评估了他们提出的局部加权集成学习算法pLWE和LWE,并与SVM和Logistic回归(LR)进行了比较。
此外,在表中,我们还展示了[8]中报告的情绪分类数据集的比较结果。在该数据集中,SGD表示具有Huber损失的随机梯度下降算法,SCL表示结构对应学习算法学习到的新表示的线性预测器,sc - mi是SCL的扩展,利用互信息选择SCL算法的主特征。
最后,在无线定位数据集,我们显示比较结果报道在[67],基线是正则化最小二乘回归模型(RLSR),这是一个标准的回归模型,和KPCA,代表应用RLSR所学到的新数据的表示内核主成分分析。比较的迁移学习方法包括核均值匹配(KMM)和提出的迁移成分分析(TCA)算法。关于实验结果的更多细节,读者可以参考表中所示的参考文献。从这些比较结果中,我们可以发现,与非迁移学习方法相比,适合实际应用的迁移学习方法确实可以显著提高性能。
Toolboxes for Transfer Learning: 加州大学伯克利分校的研究人员为迁移学习提供了一个MATLAB工具箱。该工具包包含用于传输学习的算法和基准数据集。此外,它还为开发和测试迁移学习的新算法提供了一个标准平台。
7.1 Other Applications of Transfer Learning
迁移学习在顺序机器学习中也有许多应用。例如,[85]提出了一种基于图的方法来识别之前遇到的游戏,并将该技术应用于自动进行域映射以实现价值函数的传递,并加速对之前所玩游戏的变体的强化学习。在翻译学习中,提出了一种在完全不同的特征空间之间进行转换的新方法,通过学习在两个完全不同的领域(图像和文本)中连接特征的映射函数,该方法成为可能[86]。最后,Li等[87]、[88]将迁移学习应用到协同过滤问题中,解决了冷启动和稀疏性问题。在[87]中,Li等人学习了一种基于潜在用户和项目集群变量的共享评分模式混合模型,称为评分矩阵生成模型(RMGM)。RMGM通过将每个评价矩阵中的用户和项映射到共享的潜在用户和项空间,将来自不同领域的多个评价矩阵连接起来,从而传递有用的知识。在[88]中,他们将协聚算法应用于辅助评价矩阵中的用户和项目。然后他们构建了一个集群级的评分矩阵,称为码本。假设目标评价矩阵(on movies)与辅助矩阵(on books)相关,通过扩展码本,完成知识迁移过程,重构目标域。
8 CONCLUSIONS
在这篇调查文章中,我们回顾了当前迁移学习的几个趋势。迁移学习可分为归纳迁移学习、转导迁移学习和无监督迁移学习。之前的作品大多集中在前两个场景。无监督迁移学习在未来可能会引起越来越多的关注。
此外,根据学习中需要迁移的内容,每种迁移学习方法都可以分为四种上下文。它们分别包括实例迁移方法、特征表示迁移方法、参数迁移方法和关系知识迁移方法。前三种上下文都有一个对数据的假设,而最后一个上下文处理对关系数据的迁移学习。这些方法中的大多数都是。假设所选的源域与目标域相关。
在未来,需要解决几个重要的研究问题。首先,如何避免负迁移是一个悬而未决的问题。如第6节所述,许多提出的迁移学习算法都假定源域和目标域在某种意义上是相互关联的。然而,如果这个假设不成立,可能会发生负迁移,这可能会导致学习者的表现比没有迁移差。因此,如何保证负迁移的发生是迁移学习中的一个关键问题。为了避免负迁移学习,我们需要首先研究源域或任务与目标域或任务之间的迁移能力。基于合适的可迁移性度量,我们可以选择相关的源域或任务来提取知识,从而学习目标任务。为了定义域和任务之间的可移植性,我们还需要定义度量域或任务之间相似性的标准。基于距离度量,我们可以对域或任务进行聚类,这可能有助于度量可移植性。一个相关的问题是,当整个域不能用于迁移学习时,我们是否还可以迁移域的一部分用于目标域中的有用学习。
此外,到目前为止,大多数现有的迁移学习算法都专注于改进源和目标域或任务之间不同分布的泛化。在这样做时,他们假设源域和目标域之间的特征空间是相同的。然而,在许多应用程序中,我们可能希望跨具有不同特性空间的域或任务传输知识,并从多个此类源域传输知识。我们将这种迁移学习称为异构迁移学习。
最后,到目前为止,迁移学习技术主要应用于小型应用,但种类有限,如基于传感器网络的定位、文本分类和图像分类等问题。在未来,迁移学习技术将广泛应用于解决视频分类、社交网络分析和逻辑推理等其他具有挑战性的应用。