**部分 基本概念与架构
第1章 简介
摘要 本章以介绍本书的结构开篇,分为三部分。**部分解释了一些基本概念,如什么是元学习,元学习与自动化机器学习(AutoML)之间的关系等。接下来几章分别详细介绍了元学习与AutoML系统的基本架构、利用先验元数据进行算法选择的系统、系统评估时使用的方法,以及不同类型的元级模型。该部分还介绍了超参数优化和工作流设计所使用的方法。第二部分论述了更为先进的技术和方法。其中第8章说明了建立构形空间和开展实验的相关问题。随后的几章讨论了不同类型的集成、集成方法中的元学习、用于数据流的算法及跨任务的元模型转移。其中一章专门介绍了深度神经网络的元学习。昀后两章讨论了各种数据科学任务自动化及尝试设计更复杂的系统的相关问题。第三部分内容相对较短。该部分讨论了元数据(包括实验结果)的存储库,并通过举例说明从这些元数据中可以学到什么知识。昀后一章是结束语。
1.1 本书的结构
本书由三部分组成。
**部分(第2~7章)概述了元学习系统的基本概念和架构,重点介绍了通过观察不同模型在先验任务中的表现,可以收集到哪些类型的“元知识”,以及如何在元学习方法中使用这些元知识来更有效地学习新任务。由于这种元学习与AutoML密切相关,因此本书也颇为详细地介绍了AutoML,重点介绍了如何通过元学习来改进AutoML。
第二部分(第8~15章)介绍了这些概念在更具体任务中的延伸。*先,我们讨论了一些可用于设计构形空间的方法,构形空间的设计会影响元学习和AutoML系统的搜索。然后,我们展示了如何利用元学习来构建更好的集成,并为流数据**算法。接下来,我们探讨了如何利用神经网络中的迁移学习和小样本学习,将信息从之前学习的模型迁移到新的任务中。昀后两章专门说明了数据科学自动化和复杂系统设计自动化的相关问题。
第三部分(第16~18章)提供了关于如何在存储库中整理元数据及如何在机器学习研究中利用元数据的实用建议。昀后一章结束语,并提出了未来的挑战。
1.2 基本概念与架构(**部分)
1.2.1 基本概念
1. 机器学习的作用
当今,数据无处不在。我们每天都会遇到各种形式的数据,例如,公司试图通过广告牌和在线广告的形式来推销他们的产品,大型传感器网络和望远镜监测着我们周围甚至宇宙中发生的复杂变化,制药机构记录着各类分子之间的相互作用,以寻找治疗新疾病的新药。
所有这些数据都是价值的,我们可以利用数据来表示不同的情况,学会将它们分成不同的小组,并将其纳入一个能够帮助我们做出决定的系统中。这样,我们就能从金融数据中识别欺诈性交易、根据临床数据研发新药或推测宇宙中天体的演变。这个过程就涉及学习。
科学界已经阐述了许多分析和处理数据的技术。其中一项典型的科学任务是建模,其目的是以简化的方式描述给定的复杂现象,以便从中进行学习。为此,基于各种直觉和假设,研究人员研发了许多数据建模技术。这一研究领域被称为机器学习。
元学习的作用
如前所述,我们不能设想一个算法适用于所有的数据,各专业领域都有其适用的算法。为特定的任务和数据集选择合适的算法是获得适用模型的关键。因此,选择算法本身就可以视为一个学习任务。
跨任务学习的过程通常被称为元学习。然而,过去数十年来,不同的机器学习研究人员使用的术语也不同,如元建模、学会学习、持续学习、集成学习和迁移学习等。这个庞大且不断增长的工作体系已经清楚地表明,元学习可以大大提高机器学习的效率、简单性和可靠性。
元学习领域是一个非常活跃的研究领域。许多新的和有趣的研究方向在不断涌现,以新颖的方式来实现这一总体目标。本书旨在简述迄今为止昀成熟的研究成果。随着该领域的迅速发展,数据资料需要进行整理并划分成不同紧密联系的单元。本书利用一个章节(第4章)论述了数据集的特征,但数据集在许多其他章节中也占据着重要地位。
元学习的定义
我们先来看看本书对元学习的定义。
元学习是一种利用元知识来调整机器学习过程以获得有效模型和解决方案的原则性方法的学习。
前述元知识通常包括从过去的任务中获得的任何类型的信息,如先验任务的描述、尝试的管道架构和神经架构或所产生的模型。在很多情况下,元知识还包括在为新任务寻找昀佳模型过程中所获得的知识,这些知识可以用来指导寻找更好的学习模型。Lemke等(2015)从系统的角度对这一点进行了说明。
元学习系统必须包含一个用来学习经验的学习子系统,经验来源于单一数据集的先前学习片段和/或不同的领域或问题中提取的元知识。
目前,许多研究的目标都是如何利用过去和目标数据集中收集的元数据。
元学习与自动机器学习(AutoML)
一个重要的问题是:元学习系统与AutoML系统之间有什么区别?尽管这是一个主观性很强的问题,不同的人可能会给出不同的答案,但是在本书中,我们给出了Guyon等(2015)提出的AutoML定义。
AutoML指除模型选择、超参数优化及模型搜索等之外的机器学习过程自动化的所有方面。
许多AutoML系统使用的是从以往见过的数据集中获取的经验。因此,根据上面的定义,许多AutoML系统,就其本身而论,也属于元学习系统。本书重点关注涉元学习技术,以及经常使用元学习的AutoML系统。
元学习一词的来源
第1章论述了Rice(1976)的开创性工作。这项创举直到很久以后才在机器学习领域变得广为人知。
20世纪80年代,Rendell发表了多篇关于偏差管理的文章(该主题将在第8章进行讨论)。其中一篇文章(Rendell等,1987)包括以下内容:变量偏差管理系统(VBMS)可以执行元学习。与其他多数学习系统不同,VBMS可进行不同层次的学习。在概念学习过程中,系统还会获取有关归纳问题、偏差及两者之间关系的知识。因此,系统不仅可以学习概念,还可以学习问题与问题解决技术之间的关系。
20世纪70年代末,Brazdil在爱丁堡大学邂逅了与Kowalski(1979)的著作有关的“元解释器”一词。1988年,他组织了一场有关机器学习、元推理和逻辑学的研讨会(Brazdil等,1990)。
本书的简介如下。
一部分人认为,元知识代表的是关于其他(目标级)知识的知识。元知识的目的主要是为了控制推理。另一学派认为,“元知识”的作用有所不同,它是用于控制知识获取和知识重组(学习)的过程。StatLog项目(Michie等,1994)对元知识进行了探索。
1.2.2 问题类型
在科学文献中,通常会区分以下问题类型,其中许多类型在整本书中均有所提及。元学习系统的总体目标是从先验模型的应用中学习(它们的构造原理及性能表现),以便更好地为目标数据集建模。如果基本级任务是分类,这意味着可以预测目标变量的取值,即本例中的类值。理想情况下,通过借力训练数据以外的信息,能够更好地(或更有效地)实现这一目标。
(1)算法选择(AS)。给定一组算法和一个数据集(目标数据集),确定哪种算法昀适合对目标数据集建模。
(2)超参数优化(HPO)。给定一种包含特定超参数的算法和一个目标数据集,确定给定算法的昀佳超参数并设置为目标数据集建模。
(3)合并算法选择与超参数优化(CASH)。给定一组算法,其中每个算法都具有自身的超参数集,同时给定一个目标数据集,确定使用哪种算法及如何设置算法超参数来实现目标数据集的建模。一些CASH系统还可以处理更加复杂的应用流水技术合成任务,后面将进行讨论。
工作流(管道)合成即为,给定一组算法,且每个算法都有属于它自身的超参数集,并给定一个目标数据集,设计一个由一或多个算法组成的工作流(管道)为目标的数据集建模。工作流中包含的具体算法及算法超参数设置可以视为CASH问题。
(4)架构搜索和(或)合成。这一问题类型可视作对上述问题类型的泛化。在此设置中,无须像工作流(应用流水技术)中那样在一个序列中组织单一成分。例如,该架构可以包括部分有序或树状的结构。神经网络结构设计可视为该范畴下的一个问题。
(5)少样本学习。给定一个只包含很少示例的目标数据和各类非常相似但包含许多示例的数据集,检索一个在先验数据集上预训练过的模型,并对该模型进行微调,使它在目标数据集上有优异的表现。
注意,算法选择问题被定义在一个离散的算法集上,而超参数优化问题和CASH问题通常被定义在连续的构形空间上,或同时具有离散变量和连续变量的异构空间上。算法选择技术也可以轻松地应用于后者的离散化版本中。
在本书中,我们遵循以下已在机器学习领域中得到广泛应用的惯例。“超参数”属于用户自定义参数,它决定具体机器学习算法的行为。例如,决策树中的剪枝水平和神经网络中的学习速率均为超参数。(模型)“参数”是基于训练数据而习得的一种参数,如将神经网络模型的权值视作模型参数。
展开