机器学习及其应用
上QQ阅读APP看书,第一时间看更新

1.2 机器学习发展历程

机器学习作为人工智能的一个重要研究领域随着人工智能的产生而产生,并且随着人工智能理论的发展而发展。目前,机器学习理论大致分为连接学习、符号学习和统计学习这三种基本类型。符号学习和连接学习分别源自人工智能的符号主义和连接主义,统计学习则源自符号学习中的归纳学习。从历史上看,连接学习是机器学习最初采用的策略,感知机和神经网络是机器学习初创时期的代表性成果。20世纪80年代,随着人工智能符号主义的发展,符号学习逐步成为机器学习的主流技术。20世纪90年代以来,统计学习方法逐步走向成熟,并以其巨大理论创新和良好应用效果逐步取代符号学习成为机器学习的研究热点。近年来,得益于计算机运算能力的巨大提升和数据量的快速增长,以深度学习为代表的连接学习再次兴起,涌现出一大批优秀的理论和应用成果。统计学习和深度学习的巨大成功使得人工智能全面进入机器学习时代,并成为引领社会未来的战略性技术。

1.2.1 感知机与连接学习

人工智能最早期的探索是从模仿人类或动物大脑的生物结构开始的。人类或动物大脑神经系统最基本的组成结构是神经元,相互连接的多个神经元通过相互传送某些化学物质以改变电位的方式来实现信息传递与交互。麦卡洛克和皮茨在1943年发表论文《神经活动中内在思想的逻辑演算》(A Logical Calculus of the Ideas Immanent in Nervous Activity),首次提出模拟生物神经元的数学模型,名为M-P模型。图1-10表示该模型的基本结构,其中{x1,…,xm}为m个模型输入变量,xi∈(0,1),θ为阈值,模型输出y有两种可能的取值状态:当978-7-111-63202-3-Chapter01-53.jpg时,y=1;否则,y=0。

978-7-111-63202-3-Chapter01-54.jpg

图1-10 M-P模型示意图

M-P模型是对单个神经元的简单模拟,模型的输出值仅为0或1,没有区分m个输入在重要性方面的差异,不能很好地体现神经元对外部环境变化的自适应性。为此,赫布在1949年提出赫布学习规则,指出神经系统在对一个信号进行响应的同时,相关被激活神经元之间的联系也会随之得到增强,各单个神经元的输入之间应存在某种重要性差别。为此,赫布对M-P模型进行改进,对其m个输入变量{x1,…,xm}添加了权重信息,使得M-P模型能够根据实际情况自动修改这些权重以达到模型优化或机器学习的目的。这是机器学习最早期的思想萌芽。

人类或动物大脑的神经网络是一种由大量神经元通过层级连接构成的复杂网络。通过模仿生物大脑神经网络结构的方式实现机器智能是人工智能研究的一个基本思想,称为人工智能的连接主义思想,简称为连接主义。连接主义分别将每个神经元模型作为一个简单的独立计算单元,并按照一定的结构和规则对多个神经元模型进行组合和连接,形成一个复杂庞大的神经元网络模型用于模拟生物大脑的神经网络,实现人工智能。

基于连接主义思想和赫布学习规则,罗森布拉特在1957年提出一种名为感知机的神经网络模型。如图1-11所示,该模型根据连接主义思想将多个神经元模型进行分层互联,基于赫布学习规则通过使用样例信息调整连接权重的方式实现模型优化。这种使用样例信息调节神经元之间连接权重的学习方式被称为连接学习。连接学习是机器学习初创时期的基本学习理论,感知机和神经网络模型是机器学习早期的代表性成果。

978-7-111-63202-3-Chapter01-55.jpg

图1-11 单层感知机示意图

图1-11所示的感知机模型包括输入层与输出层,但只有输出层参与数值计算,故亦称为单层感知机。单层感知机可用于二分类任务,若存在超平面可以将两类样本分隔开来,则单层感知机有能力确定一个这样的超平面,图1-12表示单层感知机的分类效果,但若两类样本不能通过简单超平面进行划分,则单层感知机亦无能为力。

单层感知机能够完成一些简单的视觉处理任务,在当时引起了社会各界的广泛关注。然而,单层感知机的实际能力却名过其实。明斯基在其出版的著作《感知机:计算几何学导论》中证明单层感知机难以解决简单的异或分类问题。这使得单层感知机的实际能力被当时的社会所质疑,连接学习和连接主义的研究随之陷入低谷。

沃波斯在1974年提出多层感知机模型,有效解决了单层感知机无法解决的异或分类问题。如图1-13所示,多层感知机在单层感知机基础之上添加了一个隐藏层,通过基于反向传播的连接学习算法优化模型参数,图中输入数据+1为线性组合中关于常数项的输入。然而,沃波斯的多层感知机模型未能给连接学习发展的低谷带来转机,其中影响连接学习甚至整个机器学习发展的反向传播学习算法也未能获得应有的重视,因为当时整个神经网络和连接主义的研究正处低谷,基于符号逻辑推理的人工智能符号主义和专家系统的研究正如日中天。

978-7-111-63202-3-Chapter01-56.jpg

图1-12 单层感知机的分类效果

978-7-111-63202-3-Chapter01-57.jpg

图1-13 多层感知机模型

霍普菲尔德在1982年提出一种新的神经网络,即霍普菲尔德网络。它是一种基于神经动力学的神经网络模型,其连接学习过程可简单理解为模型稳定状态的优化搜索过程。霍普菲尔德网络不仅可以有效解决一大类的模式识别问题,还可以求得一类组合优化问题的近似解,这一成果振奋了连接学习领域。1989年,塞班克在理论上证明了神经网络模型在本质上是一个通用的逼近函数,其拟合能力十分强大,包含一个隐藏层的神经网络模型可以逼近任意连续函数,而包含两个隐藏层的神经网络模型则可以逼近任意函数。这使得连接学习在理论上又向前迈进了一大步。这些成果使得连接主义和连接学习再次成为研究热点。

然而,连接学习的研究在20世纪90年代初遭遇发展瓶颈。由于在当时的计算条件下,随着网络层数的加深,网络模型变得难以收敛且超出计算能力,故具有强大拟合能力的浅层网络是当时最主要的研究对象。然而,关于浅层网络的理论研究进展缓慢,浅层网络模型在实际应用中难以取得满意的效果,连接主义和连接学习的研究再次进入低谷。

1.2.2 符号学习与统计学习

连接主义和连接学习从模拟生物大脑结构出发实现人工智能,这些理论认为智能的基本单元为神经元,智能活动过程则是神经元之间的连接交互过程。这种基于模拟生物大脑结构的人工智能理论并非得到所有人的认可。很多研究者从人类思维内涵和过程出发研究人工智能,建立一套符号主义理论。符号主义认为思维的基本单元是符号信息,智能活动过程就是符号推理或符号计算的过程,生物大脑的本质就是一个能够高效处理符号信息的物理系统。基于符号主义理论,机器学习发展出另一套学习理论——符号学习。

人工智能的符号主义理论认为,只要机器具备自动的逻辑推理能力便可拥有智能。因此,以谓词逻辑推理理论为基础的自动定理证明成为人工智能的重要研究领域。纽厄尔和西蒙等人在1956年编写完成的名为逻辑理论家的程序是符号主义的代表性成果。该程序自动证明了罗素的著作《数学原理》中的全部52条定理,初步验证了用计算机来实现人类思维的可行性。纽厄尔和西蒙因这项成果获得1975年度图灵奖。

然而,人们逐渐发现仅赋予机器自动逻辑推理能力难以使其具有智能,拥有专业领域知识是实现人工智能不可或缺的条件。为此,费根鲍姆在1965年提出了专家系统的概念,并据此实现了一个名为DENDRAL的历史上第一个专家系统。在此之后,出现了一大批成功应用于故障诊断、辅助设计等不同专业领域的专家系统,专家系统迅速成为人工智能的研究焦点和主流技术,专家系统的构造也提升到了工程的高度,名为知识工程。费根鲍姆由于在这方面的重大贡献被人们称为知识工程之父,并获得1994年度图灵奖。

所谓专家系统,是指一个拥有某领域专家级知识、能够模拟专家思维方式、能够像人类专家一样解决实际问题的计算机系统,其基本结构如图1-14所示。知识库和推理机是专家系统的两大核心模块,推理机依据知识库提供的专业领域知识进行自动的演绎或归纳推理,获得所需推理结论实现人工智能。显然,知识库的构造是实现专家系统的关键要点。

早期专家系统知识库中的知识是通过人工方式获取的,经过专业训练的知识工程师与领域专家进行人工交互获得专家知识并将其整理成适当的数据结构存入知识库。这种人工构造知识库的方式存在如下弊端:

(1)知识库的普适性差,很多情况下需要针对特定的具体任务构造相应的知识库,需要频繁地人工改变知识库以适应任务的变化。例如,用于识别猫的知识库不能用于识别狗,如果想用一个识别猫的专家系统来识别狗,就必须手工修改知识库;

(2)专家对事物的认识有时候具有一定的主观性,甚至会有一些错误,而且不同的专家对同一个事务给出的知识有时会有一些分歧,如何消除专家知识的主观错误或分歧有时候是一件非常困难的事情。

上述弊端很快成为制约专家系统和知识工程进一步发展的瓶颈。20世纪80年代,人们开始意识到让机器自己从样本数据中学习所需知识的重要性,并从符号主义的基本理论出发,比较系统地研究机器学习的基本理论和方法,逐步形成一套基于符号计算的机器学习理论和方法,称为符号学习。

符号学习分为记忆学习、演绎学习和归纳学习这三种基本类型。记忆学习是一种最基本的学习方式,有时亦称为死记硬背式学习,这种学习只需将知识记录下来,需要时再做原样输出,在本质上是对信息进行存储和检索。演绎学习是一种以演绎推理为基础的学习方式,即从现有知识当中通过由一般到特殊的演绎推理获得并保存推理结论。归纳学习是一种以归纳推理为基础的学习方式,试图从具体示例或样例中归纳出一般规律。

归纳学习是最重要的一种符号学习方式,研究成果也较为突出。作为符号学习代表性成果的决策树模型就是基于归纳学习。决策树模型是一种树形结构,包含了一个根结点、若干内部结点和若干叶子结点。该模型主要用于表示某种级联判断或决策,例如,图1-15表示一个用于挑选篮球运动员的决策树模型,其中每个结点对应一次判断或决策,叶子结点表示判断或决策的最终结果。可以通过ID3、C4.5和CART等机器学习算法对数据样本自动构造决策树模型,构造用于符号推理的知识库。1995年布瑞曼等人在决策树模型的基础上进一步提出了随机森林模型及相关的机器学习算法,该模型通过构造多棵决策树并将它们各自的输出进行组合使模型输出更具稳定性。

978-7-111-63202-3-Chapter01-58.jpg

图1-14 专家系统的基本结构

978-7-111-63202-3-Chapter01-59.jpg

图1-15 决策树模型示例

符号学习在机器学习历史上长期占据主导地位,基于符号学习方法的专家系统在多个领域获得成功应用,例如辅助医疗诊断专家系统(MYCIN)、工业指导专家系统(CONPHYDE)等。直到20世纪90年代,基于概率统计理论的统计学习方法逐渐走向成熟,并凭借其理论的完备性和实际应用中的卓越表现取代符号学习成为机器学习的主流方式。

统计学习源于符号学习中的归纳学习,它继承了归纳学习通过分析数据获得一般化规律的思想,由基于概率统计的学习理论指导其归纳推理过程。统计学习的目标是理解样本数据,从样本数据中发现其内在规律,并利用这些规律去进行预测分析。统计学习的基本策略是假设同一类型的数据满足一定的统计学规律,并据此使用概率统计工具分析处理数据。

统计学习中最具代表性的成果是支持向量机模型及相关的统计学习算法。该模型由万普尼克和凯尔特斯在1995年正式提出,是一种基于小样本统计学习的二值分类器模型,目前已广泛应用于模式识别、自然语言处理等实际问题并取得较好的实践效果。

事实上,万普尼克早在20世纪70年代后期便提出了支持向量机的两个核心思想,即最大间隔和核方法。所谓最大间隔,是指正负两类样本与分离超平面之间的距离最大。如图1-16a所示,对于一个可用超平面进行样本分类的线性可分任务,一般都存在无数个分离超平面,其中与两类样本的几何间隔最大的分离超平面具有最强的泛化能力,故而支持向量机所要寻找的分离超平面便是两类样本的几何间隔最大的分离超平面,如图1-16b所示,其中虚线上面的点表示支持向量,实线表示间隔最大的分离超平面。

最大间隔分离超平面虽然是线性可分任务的最优解,但大部分的二分类任务都是线性不可分的,即不存在任何一个超平面可以将两类数据完美分隔开来,对于此类任务,核方法便是解决问题的关键所在。核方法的基本思想是将低维特征空间当中线性不可分的数据映射到高维特征空间当中,使得这些数据在高维特征空间当中线性可分,如图1-17a所示,两类数据在二维平面当中线性不可分,但若利用某一映射将其转变为图1-17b中所示的情况,原本线性不可分的分类任务便被转化为了线性可分的任务,再通过最大间隔思想便可求得泛化性能最佳的分离超平面。

978-7-111-63202-3-Chapter01-60.jpg

图1-16 分离超平面与最大间隔分离超平面

a)分离超平面

b)间隔最大的分离超平面

978-7-111-63202-3-Chapter01-61.jpg

图1-17 核方法示意图

a)二维特征空间的数据分布

b)三维特征空间的数据分布

支持向量机具有一套比较完整的理论支撑,已被理论证明具有以下两方面的优势:

(1)支持向量机使用的最大间隔思想使得分类器模型只取决于支持向量,模型计算复杂度只与支持向量的数目有关,有效避免了维数灾难问题并使支持向量机对训练样本的变化具有较强的鲁棒性。

(2)支持向量机的核方法在一定程度上避免了直接在高维空间中处理问题,有效降低了问题求解的难度。

20世纪90年代以来,以支持向量机为代表的统计机器学习理论和方法得到蓬勃发展并取代符号学习成为机器学习的主流。在统计机器学习的带动下,机器学习进入快速发展的阶段,研究成果大量涌现,监督学习、无监督学习、半监督学习、强化学习、集成学习、迁移学习等机器学习方法不断得到发展和完善。这些机器学习方法在计算机视觉、自然语言理解、数据挖掘、经济决策与预测等多个领域的成功应用使机器学习在人工智能方面的重要性逐步显现,并将人工智能的发展带入机器学习时代。

1.2.3 连接学习的兴起

进入21世纪,计算机硬件计算能力获得飞跃发展。特别是英伟达公司(NVIDIA)在2007年推出基于计算统一设备体系结构(Compute Unified Device Architecture,CUDA)的通用图形处理单元(Graphics Processing Unit,GPU)版大大增强了GPU的开放性和通用性,吸引了大量使用各种编程语言的工程师纷纷使用GPU进行系统开发。人们在2009年开始尝试使用GPU训练人工神经网络,以有效降低多层神经网络的训练时间。2010年推出的NVIDIA-480GPU芯片已经达到每秒1.3万亿次浮点运算,能够很好地满足多层神经网络训练的高速度、大规模矩阵运算的需要,使得连接学习训练困难的问题得到了很好的解决,也为以深度学习为代表的连接学习的兴起奠定了良好的硬件算力基础。

与此同时,连接学习算法和理论研究取得了重要突破。2006年,辛顿使用逐层学习策略对样本数据进行训练,获得了一个效果较好的深层神经网络——深度信念网络,打破了深层网络难以被训练的局面。逐层学习策略首先将深层神经网络拆分成若干相对独立的浅层自编码网络,各个自编码网络可以根据其输入与输出一致的特点进行无监督学习,由此计算出连接权重;然后通过将多个训练好的自编码网络进行堆叠的方式获得一个参数较优的深层神经网络;最后,通过少量带标注的样本对网络进行微调,便可获得一种性能优良的深层神经网络,即深度信念网络。

深度信念网络以受限玻尔兹曼机(RBM)为基本构件堆叠组建而成。RBM是一种自编码网络,其结构如图1-18所示,包含可视层和隐藏层。图1-19表示深度信念网络的堆叠结构,由图1-19可知,深度信念网络通过堆叠受限玻尔兹曼机的方式构造,前一个训练完成的RBM的隐藏层作为后一个RBM的可视层,层层堆叠,由此形成深度信念网络。

978-7-111-63202-3-Chapter01-62.jpg

图1-18 受限玻尔兹曼机(RBM)示意图

978-7-111-63202-3-Chapter01-63.jpg

图1-19 多个RBM堆叠示意图

用于堆叠的受限玻尔兹曼机通过逐层训练的方式已经获得了较优的权重设置,这使得深度信念网络的初始权重较优,只需利用反向传播算法对连接权重进行微调即可完成训练。深度信念网络在效果上要优于支持向量机,这使得人们将目光再次转回到连接学习上。为此次连接学习复兴做出重要贡献的辛顿将深层次神经网络的训练构造过程命名为深度学习,此后连接学习的理论和应用研究便在深度学习的名号下如火如荼地展开。

在2012年,基于深度卷积神经结构的Alexnet图像分类模型利用分布式GPU完成了Ima⁃geNet数据集中海量图像分类样本的训练,在合适的训练时间长度内取得了较好的训练效果,赢得了2012年图像识别大赛的冠军并实现了识别准确率高达10.8%的提升。ImageNet数据集在普林斯顿大学李飞飞教授主导下,通过众包平台Mechanical Turk历时两年时间创建,由1500万个标记图像组成,分为22000个类别,是当时最大的图像分类开源数据集,也是各种机器视觉算法的最有力的检测工具。

卷积神经网络是一个特殊的神经网络,它利用卷积操作使得网络层与层之间采用局部连接方式,这种连接方式不仅可以减少网络参数,并且更加符合生物神经系统工作的感受野[1]机制。除此之外,卷积神经网络各层中对不同感受野进行处理时共享同一组参数,这进一步减少了模型参数的数量。Alexnet图像分类模型的成功表明,通过大量样本训练获得的深层次的卷积神经网络可以有效解决过拟合问题。这项研究成果使得卷积神经网络迅速成为模式识别与计算机视觉研究领域的新宠,并涌现出了大批优秀研究成果,例如用于图像分类任务的GoogleNet,VGG,ResNet等深度卷积网络模型。目前,面向图像分类的深度卷积网络模型已呈百花齐放的发展态势。

近几年,人们进一步将深度卷积网络等深度网络模型用于图像中目标的自动检测,并取得了丰硕的研究成果。目前,基于深度网络模型的目标检测的算法主要分为两大类:第一类是两阶段检测算法,这类算法将检测问题划分为两个阶段,即首先产生候选区域,然后对候选区域进行分类,主要使用R-CNN,Fast R-CNN,Faster R-CNN等深度卷积网络模型;第二类是单阶段检测算法,这类算法不需要产生候选区域,直接生成物体类别概率和位置坐标值,主要使用YOLO和SSD等深度卷积网络模型。这两类目标检测算法各具特色,在一般情况下,两阶段算法准确度较高,单阶段算法则速度较快。

图像分类和目标检测这类任务的研究对象都是独立的图像样本,模型不用考虑样本之间的联系,使用深度卷积网络往往就能取得较好的效果。如果所处理的信息都是一个连续序列,例如一段音频或视频,此时卷积神经网络模型就会割裂信息序列项的前后联系,为解决这一问题,人们进一步提出了可以处理序列信息的深度循环神经网络(RNN)和长短时记忆网络(LSTM),以有效解决信息序列的表示和处理问题。目前,RNN和LSTM已在视频行为分析、语音信息的识别与合成、自然语言理解与机器翻译等多个领域取得了成功应用。

深度学习方法也使强化学习领域的研究取得了长足的进展,利用基于深层神经网络模型所实现的深度价值网络和深度策略网络在强化学习领域起到了重要的作用,例如著名的AlphaGO围棋程序使用强化学习策略构造深度策略网络,将其用于根据当前盘面状态确定行棋策略,并通过构造深度Q网络模型实现对行棋策略的评估,以寻求策略和评估策略的交互的方式实现布局并取得了很好的效果。

此外,人们还尝试使用深度学习模型模拟现实生活中的真实数据。2014年6月,古德费勒等学者提出了名为生成对抗网络(GAN)的生成模型,该模型可以根据需要生成新的样本。该模型由两个子模型组成,第一个为生成器,它可以根据训练样本来生成新的样本,另一个为判别器,它的输入为训练集中的真实样本或生成器所生成的虚假样本,目标是判断输入样本是否为真实样本或虚假样本。当判别器无法判别时,就意味着生成器所生成的样本与真实样本几乎来自同一分布,从而完成了新样本的生成任务。

深度学习除了实际效果上的大幅改善之外,还能避免特征人工选择或构造方式的不足,深度学习利用网络模型自动提取的特征往往更有利于模型解决实际问题。但这种特征自动提取方式也存在不容忽视的问题:首先,深度学习缺乏严格的理论基础,实现过程是个黑盒,即深度学习模型所用的特征所表达的信息往往难以理解;其次,深度学习模型拥有大量参数,通常需要海量训练样本,这无疑增加了训练的难度。如何在保证效果的基础上减小模型、减少参数或者实现大模型的小样本训练仍然是一个具有挑战性的问题。