迁移学习导论
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.1 迁移学习

《论语·为政》中有这样一句家喻户晓的关于学习的句子:

温故而知新,可以为师矣。

这句话的意思是说,我们在学习新知识之前,如果能先对旧知识加以温习,则可以获得新的理解与体会。而凭借这个能力,就可以成为老师了。更进一步,这句话说明人们的新知识、新能力往往都是由过去所学的旧知识发展变化而来的。在学习新知识时,如果能从旧知识中寻找到与新知识的连接点和相似之处,就可以事半功倍。

《庄子·天运》中有这样一则故事:

故西施病心而颦其里,其里之丑人见而美之,归亦捧心而颦其里。其里之富人见之,坚闭门而不出;贫人见之,挈妻子而去之走。彼知颦美,而不知颦之所以美。

这就是我们非常熟悉的“东施效颦”的故事。西施由于有胸口痛的病,所以她捂着心口皱着眉头走在村子里。同村的东施是一个长得很丑的人,看见西施皱着眉头的样子后,觉得她这样做很漂亮,回家后便也捂着自己的心口在村里行走。村里的富人见了她以后紧闭大门;穷人见了东施则带着妻儿躲开她。东施只知道皱着眉头会很美,却不知道皱眉头为什么会美。

旧的知识可以提炼升华,迁移到新的知识的学习上来,这是一个正向的故事。同样的道理,那为什么东施效颦以失败告终?

其实这中间的关键问题,在于两者之间的相似性。为什么旧知识的温习可以帮助新知识的学习?因为旧知识和新知识之间存在某种关联,正是这种关联给二者建立了桥梁。而东施本来就很丑,与四大美女之一的西施之间根本没有可比性。故她虽然模仿其皱眉,最终也只能贻笑大方。

那么,如何有效地利用事物之间的相关性,来帮助我们解决新问题、学习新能力呢?

这就引出了本书的主题:迁移学习。

迁移学习,顾名思义,就是要通过知识的迁移进行学习,达到事半功倍的效果。

迁移学习的概念最早出现于心理学和教育学领域[Bray,1928]。心理学家也将迁移学习称为学习迁移,意在强调一种学习对另一种学习的影响。比如,我们如果已经学会了面向对象的Java语言,就可以类比学习C#语言;我们如果已经会下中国象棋,就可以类比着下国际象棋;我们如果已经学会骑自行车,就可以类比着学习骑摩托车等。通过两种事物间的相关性,就可以构建出一条由旧知识到新知识的迁移桥梁,更快更好地完成对新知识的学习。

其实人类的迁移学习能力是与生俱来的。生活中常用的“举一反三”“他山之石、可以攻玉”等就很好地体现了迁移学习的思想。图1.1给出了生活中常见的迁移学习的例子[1]。在图1.1(a)中,由于Java语言和C#语言都是面向对象的程序设计语言,因此,我们学会Java语言后便可类比学习C#语言;在图1.1(b)中,中国象棋与国际象棋的规则之间也存在一定的相似性,因此,两种棋类也可以进行类比学习。

在人工智能和机器学习范畴,迁移学习是一种学习的思想和模式。

机器学习作为人工智能的一大类重要方法,在过去几十年尤其是最近十年中,获得了飞速发展。机器学习使机器自主地从数据中学习知识并应用于新问题的求解成为了可能。而迁移学习作为机器学习的一个重要分支,侧重于将已经学习过的知识迁移应用于新的问题中,以增强解决新问题的能力、提高解决新问题的速度。图1.2展示了机器学习和迁移学习的关系。

图1.1 常见的迁移学习的例子

图1.2 机器学习和迁移学习的关系

具体而言,在机器学习范畴,迁移学习可以利用数据、任务或模型之间的相似性,将在旧领域学习过的模型和知识应用于新的领域。例如,图1.3是一个现实生活和学术研究相结合的更加形象的例子。不同用户、不同设备、不同穿戴位置形成了不同的穿戴式传感器信号,如何才能利用这些用户、设备、位置的相似性,构建个性化的机器学习模型,从而可以识别每个用户的日常行为?

图1.3 不同用户、不同设备、不同穿戴位置形成的不同传感器信号

针对上述问题,图1.4简要表示了一个迁移学习过程。以不同设备为例,我们可以将设备A和设备B分别构建的模型AB通过一些迁移的方法进行融合(我们将在本书的第二部分“方法与技术”介绍这些方法),使它们互通有无。然后,将迁移融合后的模型,应用于新的设备C,从而完成设备C上的行为识别。相同的例子可以推广到不同用户和不同穿戴位置上。

图1.4 迁移学习过程

值得一提的是,2016年,新华社以“迁移学习:中国人工智能赶超的机会来了”为题对迁移学习进行了报道[2]。该报道指出,迁移学习是中国领先于世界的少数几个人工智能领域之一。杨强教授及其团队在2020年出版了第一本迁移学习专著[Yang et al.,2020a],全面覆盖了迁移学习的理论和应用案例。本书的一个重要区别是囊括了众多的代码和数据集,让学生更加有落地实践的可能。