在第一届北美计算机华人学者年会暨计算技术前沿研讨会上,来自伊利诺伊大学芝加哥分校的刘兵教授以“打造能够终身学习的机器”为主题,介绍了终身机器学习(Lifelong Machine Learning,LML),引起了广泛关注。
刘兵教授在 Frontiers of Computer Science (FCS) 2017年 第 3 期发表了一篇题为“Lifelong machine learning: a paradigm for continuous learning”的文章,介绍了终身机器学习的研究背景、定义、特征、研究历史,并展望了终身机器学习研究的前景。
为使国内读者更精准地理解和学习终身机器学习的概念,FCS 特别邀请了FCS 青年 AE 石川教授,对该 Perspective 文章进行了精心翻译,以飨读者。
Frontiers of Computer Science, 2017, 11(3): 359-361
DOI 10.1007/s11704-016-6903-6
PERSPECTIVE
作者:刘兵 | 伊利诺伊大学芝加哥分校
特邀译者:石川 | 北京邮电大学
机器学习对数据分析和人工智能的发展起到了巨大的推动作用。近些年,深度学习的成功又使机器学习进入了一个新的高度。机器学习算法已成功应用于工业、科学和工程等几乎所有领域。
当前,机器学习的经典模式是:在给定一个数据集上,运行一个机器学习算法,构建一个模型,然后将这个模型应用在实际的任务上。我们把这种学习范式称为孤立学习,因为它并未考虑任意其他相关的信息和过去学习到的知识。
孤立学习的缺点在于没有记忆,即它没有保留学到的知识,并应用于未来的学习。因此它需要大量的训练样例。
对于监督学习而言,大量的训练样例通常是手工标注得到的,这样费时又费力。但是现实世界中存在太多的学习任务,为了学习一个机器学习模型,对每个任务都手工标注大量的训练数据是不可能的。
更糟的是,事情总是处在不断变化中,因而需要不停地标注训练样例,这显然是无法完成的任务。对建立真正的智能系统而言,当前的孤立学习范式是不合适的,其仅仅可被用于解决具体领域的任务。
我们人类是以完全不同的方式进行学习的。我们从不孤立地学习,而是不断地积累过去学习的知识,并无缝地利用它们学习更多的知识。随着时间的增长,我们将会学习到越来越多的知识,而且越来越善于学习。
终身机器学习(或者终身学习,lifelong machine learning )就是模仿人类的这种学习过程和能力。由于我们周围的事务都是紧密相关和相互联系的,因此这种学习方式是很自然的。
过去学习到的概念和关系可以帮助我们更好地理解和学习一个新的任务,因为不同领域和任务中的很多知识都是共享的。例如,没有人会给我们1000个正面和1000个负面的汽车评论,然后让我们建立一个分类器去给新的汽车评论分类。事实上,我们人类不需要任何的评论来训练就可以做到这些,因为我们已经积累了很多知识,并且知道人们是如何赞美和贬损事物的。如果没有过去的知识,我们人类是很难用这2000个正负面评论来建立一个好的分类器。
终身机器学习
是一个持续学习过程,其中学习器已经执行一个包含N个任务的任务序列T1,T2,…,TN。在面对第N+1个任务TN+1和对应的数据DN+1时,学习器可以利用其知识库中的先验知识来帮助学习TN+1任务。知识库中存储和维护过去N个任务中学习和累积到的知识。在学习了任务TN+1后,知识库会根据TN+1任务中学习到的中间或最终结果进行更新。
陈等人[1]给出的上述定义揭示了终身学习的主要特征:
-
持续学习;
-
知识被累积到知识库中;
-
利用过去学习的知识,以帮助解决未来的学习问题。
这些特征使得终身学习不同于迁移学习或者多任务学习等相关学习任务。
迁移学习
是利用源领域来帮助目标领域的学习任务。它假设源领域有大量已经标注的训练数据,目标领域有很少或者根本没有标注的训练数据,但是有很多未标注的数据。迁移学习利用源领域已经标注的数据来帮助目标领域的学习任务。
迁移学习和终身学习存在几点不同。
-
迁移学习不是持续地学习,它仅仅是利用源领域来帮助目标领域的学习。
-
迁移学习不积累已学习的知识。
-
迁移学习是利用源领域帮助目标领域的单向学习过程。
-
迁移学习假设源领域与目标领域是很相似的,相似性由使用者确定。终身学习并没有这么强的假设,使用者通常也不参与决定任务的相似性。
多任务学习
是通过进行多个相似任务的联合优化,以至于通过共享这些任务的知识来得到更好的全局结果。然而,多任务学习仍然遵循传统的机器学习范式。它同时优化多个任务而不是一个任务。
如果我们把多个任务看做一个更大的任务,那么多任务学习就变为传统的优化问题,这通常也是绝大部分多任务学习的优化形式。多任务学习并不积累知识,也没有持续学习的概念。
尽管有人认为,当新任务随时加入时,多任务学习也可以同时优化所有的任务。但是用一个单一的过程同时优化所有的任务是相当困难的,因为学习任务可能是各不相同的并且数量巨大的。
终身机器学习的概念大约是1995年由Thrun和Mitchell[4]提出的,主要有以下四个研究方向。
Thrun[5]率先研究了终身概念学习,即每个过去的或者新来的任务都是一个类或者概念。针对基于内存的学习和神经网络,出现了一些终身机器学习方法。