第七章 机器学习
教学内容:机器学习是继专家系统之后人工智能应用的又一重要研究领域。本章主要介绍机器学习的有关知识及其主要的几种学习方法,并介绍了知识发现的相关内容。
教学重点:机器学习的基本结构、类比学习、神经学习、知识发现
教学难点:学习系统的结构,知识发现的处理过程,
教学方法:课堂教学为主。注意结合学生已学的内容。及时提问、收集学生学习情况,多实用具体实例来加以说明,注意难易结合,将课程讲述得较为浅显易懂。
教学要求:重点掌握类比学习和知识发现,掌握机器学习的发展史和神经学习,了解解释学习、归纳学习,一般了解机械学习。
7.1机器学习的定义和发展历史
教学内容:本小节主要介绍了机器学习的定义以及其发展的过程,为后面的进一步学习打下基础。
教学重点:机器学习的定义
教学难点:对定义的准确把握和理解
教学方法:通过举例引入机器学习的定义,在讲述发展历史时,简介各阶段的具体产物,让学生有较为具体的感受和体会。
教学要求:重点掌握机器学习的定义,了解机器学习的发展史。
7.1.1机器学习的定义
1.机器学习的基本概念:
按照人工智能大师西蒙的观点,学习就是系统在不断重复的工作中对本身能力的增强或者改进,使得系统在下一次执行同样任务或类似任务时,会比现在做得更好或效率更高。
2.机器学习的定义
机器学习是研究如何使用机器来模拟人类学习活动的一门学科。稍为严格的提法是:机器学习是一门研究机器获取新知识和新技能,并识别现有知识的学问。
举例:列举1959年美国的塞缪尔设计的一下棋程序,由这一事件引出关于机器学习的概念的相关讨论。
提问:讨论关于机器学习的各种概念的提出以及其区别。
7.1.2机器学习的发展史
机器学习是人工智能应用研究较为重要的分支,它的发展过程大体上可分为4个时期:
1.第一阶段是在50年代中叶到60年代中叶,属于热烈时期。在这个时期,所研究的是"没有知识"的学习,即"无知"学习;其研究目标是各类自组织系统和自适应系统;指导本阶段研究的理论基础是早在40年代就开始研究的神经网络模型。在这个时期,我国研制了数字识别学习机。
2.第二阶段在60年代中叶至70年代中叶,被称为机器学习的冷静时期。本阶段的研究目标是模拟人类的概念学习过程,并采用逻辑结构或图结构作为机器内部描述。这个时期正是我国"史无前例"的十年,对机器学习的研究不可能取得实质进展。
3.第三阶段从70年代中叶至80年代中叶,称为复兴时期。在这个时期,人们从学习单个概念扩展到学习多个概念,探索不同的学习策略和各种学习方法。本阶段已开始把学习系统与各种应用结合起来,中国科学院自动化研究所进行质谱分析和模式文法推断研究,表明我国的机器学习研究得到恢复。1980年西蒙来华传播机器学习的火种后,我国的机器学习研究出现了新局面。
4.机器学习的最新阶段始于1986年。一方面,由于神经网络研究的重新兴起,另一方面,对实验研究和应用研究得到前所未有的重视。我国的机器学习研究开始进入稳步发展和逐渐繁荣的新时期。
讨论:根据对四个时期的划分和分段了解,讨论机器学习在现实生活中的具体运用及其影响。
7.2机器学习的主要策略与基本结构
内容与作用:本小节概括了机器学习的主要策略,同时给出了机器学习的基本结构,让学生对机器学习的机制有了基本的认识。
教学重点:机器学习的基本结构。
教学难点:机器学习基本结构的内在联系。
教学方法:通过概括介绍让学生了解几种基本的策略,按从易到难的顺序,层层铺垫,为后面的学习埋下伏笔。详细讲述机器学习的基本结构,通过图示让更为形象的说明。
教学要求:重点掌握机器学习的基本结构,了解机器学习的几种主要策略,一般了解影响学习系统设计的因素。
7.2.1机器学习的主要策略
学习过程与推理过程是紧密相连的,按照学习中使用推理的多少,机器学习所采用的策略大体上可分为4种棗机械学习、示教学习、类比学习和示例学习。学习中所用的推理越多,系统的能力越强。
1.机械学习就是记忆,是最简单的学习策略。这种学习策略不需要任何推理过程。
2.比机械学习更复杂一点的学习是示教学习策略。系统在接受外部知识时需要一点推理,翻译和转化工作。
3.类比学习系统只能得到完成类似任务的有关因此,他比上述两种学习策略需要更多的推理。
4.采用示例学习策略的计算机系统,事先完全没有完成任务的任何规律性的信息,因此需要推理是最多的。
讨论:通过对比四种主要策略,讨论其各自的优缺点以及其适用的环境。
7.2.2机器学习系统的基本结构
1.基本结构
图7.1表示学习系统的基本结构:
图 7.1 学习系统的基本结构
通过对这个简单模型的讨论,总结出设计学习
系统应当注意的某些总的原则:
环境向系统的学习部分提供某些信息,学习部
分利用这些信息修改知识库,以增进系统执行部分完成任务的效能,执行部分根据知识库完成任务,同时把获得的信息反馈给学习部分。在具体的应用中,环境,知识库和执行部分决定了具体的工作内容,学习部分所需要解决的问题完全由上述3部分确定。
举例:以人为例,说明机器学习和 人学习一样,有着其自身的规律和基本过程。而且,其学习过程也有着共性。
提问:能否就机器学习的基本结构,举出相关的例子,并参照其基本结构对其进行分析。
2.影响学习系统设计的重要因素
(1).影响学习系统设计的最重要的因素是环境向系统提供的信息。整个过程要遵循"取之精华,弃之糟粕"的原则,同时谨记"实践是检验真理的唯一标准"。
(2).知识库是影响学习系统设计的第二个因素。知识的表示有多种形式,在选择表示方式时要兼顾以下4个方面:
表达能力强。所选择的表示方式能很容易地表达有关的知识。
易于推理。为了使学习系统的计算代价比较低,希望知识表示方式能使推理较为容易。
容易修改知识库。学习系统的本质要求它不断地修改自己的知识库,当推广得出一般执行规则后,要加到知识库中。
知识表示易于扩展。
学习系统不能在全然没有任何知识的情况下凭空获取知识,每一个学习系统都要求具有某些知识理解环境提供的信息,分析比较,做出假设,检验并修改这些假设。因此,更确切地说,学习系统是对现有知识的扩展和改进。
举例:可举特征向量的例子来说明表达能力和推理的问题。
7.3机械学习
教学内容:本小节详细介绍了机械学习,对机械学习模式和一种数据化简模式以及机械学习的主要缺点都有较为细致的讲解。通过对这种最基本的机器学习的了解,为以后学习更为复杂的策略打下良好的基础。
教学重点:机械学习的模式和其数据化简模式
教学难点:基本原理
教学方法:用较为通俗的语言将机械学习的模式讲通彻,同时通过图表对其数据化简过程进行讲解。多结合日常生活中常有的学习过程,和机械学习参照,让学生更容易接受。
教学要求:重点掌握机械学习模式,了解机械学习的数据化简模式以及机械学习的优缺点。
1、机械学习的模式
机械学习是最简单的机器学习方法。机械学习就是记忆,即把新的知识存储起来,供需要时检索调用,而不需要计算和推理。机械学习又是最基本的学习过程。任何学习系统都必须记住它们获取的知识。在机械学习系统中,知识的获取是以较为稳定和直接的方式进行的,不需要系统进行过多的加工。
举例:可用婴儿刚开始学东西时所才用的学习方式和成人的思维方式比较。
2、数据化简
Lenat,Hayes Roth,和Klahr等人于1979年关于机械学习提出一种有趣的观点。他们指出,可以把机械学习看成是数据化简分级中的第一级。数据化简与计算机语言编译类似;其目的是把原始信息变成可执行的信息。在机械学习中我们只记忆计算的输入输出,忽略了计算过程,这样就把计算问题化简成存取问题。见图7.2:
图 7.2 数据化简级别图
3、主要问题
对于机械学习,需要注意3个重要的问题:存储组织,稳定性和存储与计算之间的权衡。
(1)存储组织信息:采用适当的存储方式,使检索速度
尽可能地快,是机械学习中的重要问题。
(2)环境的稳定性与存储信息的适用性问题:机械学习系统必须保证所保存的信息适应于外界环境变化的需要,这也就是所谓的信息适用性问题。
(3)存储与计算之间的权衡:对于机械学习来说很重要的一点是它不能降低系统的效率。
讨论:机械学习中存在的主要问题以及对学习模型的影响。
7.4归纳学习
教学内容:本小节详细介绍了归纳学习,对归纳学习的模式有较为细致的讲解,对其定义有详细的介绍,后半部分介绍了几种常见的归纳学习的方法。
教学重点:归纳学习的定义和其学习模式
教学难点:归纳学习的基本原理
教学方法:仍然使用到图表对归纳学习的模式进行讲授,结合几种常用的归纳学习方法,让学生形成系统的认识。
教学要求:重点掌握归纳学习的定义及其模式,了解归纳学习的几种常见方法。
归纳学习的定义
(1)归纳(induction)是人类拓展认识能力的重要方法,是一种从个别到一般的,从部分到整体的推理行为。
(2)归纳推理是应用归纳方法,从足够多的具体事例中归纳出一般性知识,提取事物的一般规律;它是一种从个别到一般的推理。
(3)归纳学习(induction learning)是应用归纳推理进行学习的一种方法。根据归纳学习有无教师指导,可把它分为示例学习和观察与发现学习。前者属于有师学习,后者属于无师学习。
7.4.1归纳学习的模式和规则
归纳学习的一般模式为:
给定:(1)观察陈述(事实)F,用以表示有关某些对象、状态、过程等的特定知识;(2)假定的初始归纳断言(可能为空);(3)背景知识,用于定义有关观察陈述、候选归纳断言以及任何相关问题领域知识、假设和约束,其中包括能够刻画所求归纳断言的性质的优先准则。
求:归纳断言(假设)H,能重言蕴涵或弱蕴涵观察陈述,并满足背景知识。
假设H永真蕴涵事实F,说明F是H的逻辑推理,则有:
H |> F (读作H特殊化为F)
或 F |< H(读作F一般化或消解为H)
这里,从H推导F是演绎推理,因此是保真的;而从事实F推导出假设H是归纳推理,因此不是保真的,而是保假的。
归纳学习系统的模型如图7.3所示。
图7.3 归纳学习系统模型
实验规划过程通过对实例空间的搜索完成实例选择,并将这些选中的活跃实例提交解释过程。解释过程对实例加以适当转换,把活跃实例变换为规则空间中的特定概念,以引导规则空间的搜索。
思考:引导学生通过对归纳学习模型的学习,结合身边的实例加以分析。
7.4.2归纳学习方法
1、示例学习
示例学习(learning from examples)又称为实例学习,它是通过环境中若干与某概念有关的例子,经归纳得出一般性概念的一种学习方法。
在这种学习方法中,外部环境提供的是一组例子(正例和反例),
示例学习就是要从这些特殊知识中归纳出适用于更大范围的一般性知识,以覆盖所有的正例并排除所有反例。
2、观察发现学习
观察发现学习又称为描述性概括,其目标是确定一个定律或理论的一般性描述,刻画观察集,指定某类对象的性质。观察发现学习可分为观察学习与机器发现两种。前者用于对事例进行聚类,形成概念描述;后者用于发现规律,产生定律或规则。
举例:通过书上的例子引出示例学习的概念,并加以说明。
7.5类比学习
教学内容:本小节详细介绍了类比学习,首先介绍类比推理,然后讨论类比学习的形式和学习步骤,最后研究类比学习的过程和研究类型。
教学重点:类比推理,类比学习的学习过程
教学难点:类比推理的步骤
教学方法:本节的知识较为枯燥,讲述的时候要尽量多结合相关的示例让学生能有具体的感受,更有力于接受知识。
教学要求:重点掌握类比推理的定义,了解类比学习的过程。
7.5.1类比推理和类比学习形式
类比推理是由新情况与已知情况在某些方面的相似来推出它们在其它相关方面的相似。显然,类比推理是在两个相似域之间进行的:类比推理的目的是从源域中选出与当前问题最近似的问题及其求解方法以求解决当前的问题,或者建立起目标域中已有命题间的联系,形成新知识。
其推理过程如下:
(1) 回忆与联想
遇到新情况或新问题时,首先通过回忆与联想在S中找出与当前情况相似的情况,这些情况是过去已经处理过的,有现成的解决方法及相关的知识。
(2) 选择
从找出的相似情况中选出与当前情况最相似的情况及其有关知识。
(3) 建立对应映射
在S与T的相似情况之间建立相似元素的对应关系,并建立起相应的映射。
(4) 转换
在上一步建立的映射下,把S中的有关知识引到T中来,从而建立起求解当前问题的方法或者学习到关于T的新知识。
举例:举出现实中的具体实例,按推理过程对其步骤进行一步步的细分。
7.5.2类比学习过程与研究类型
类比学习主要包括如下四个过程:
(1) 输入一组已知条件(已解决问题)和一组未完全确定的条件(新问题)。
(2) 对输入的两组条件,根据其描述,按某种相似性的定义寻找两者可类比的对应关系。
(3) 按相似变换的方法,将已有问题的概念、特性、方法、关系等映射到新问题上,以获得待求解新问题所需的新知识。
(4) 对类推得到的新问题的知识进行校验。验证正确的知识存入知识库中,而暂时还无法验证的知识只能作为参考性知识,置于数据库中。
7.6 解释学习
教学内容:本小节对两种基本的学习进行了介绍,对相关知识能有所了解,对以后的学习有很大的帮助。
教学重点:解释学习的过程和算法,神经学习的相关知识
教学难点:解释学习的过程和算法
教学方法:由于本节知识只做一般了解,所以只需对相关概念做个简介即可。
教学要求:了解解释学习的过程及神经学习的概念。
7.6.1解释学习过程和算法
解释学习一般包括下列3个步骤:
(1) 利用基于解释的方法对训练例子进行分析与解释。
(2) 对例子的结构进行概括性解释。
(3) 从解释结构中识别出训练例子的特性,获取一般控制知识。
1986年米切尔(Mitchell)等人为基于解释的学习提出了一个统一的算法EBG,该算法建立了基于解释的概括过程,并运用知识的逻辑表示和演绎推理进行问题求解。图7.4表示EBG问题。
图7.4 EBG问题
EBG求解问题的形式可描述于下:
给定:
(1) 目标概念描述TC;
(2) 训练实例TE;
(3) 领域知识DT;
(4) 操作准则OC。
求解:训练实例的一般化概括,使之满足:
(1) 目标概念的充分概括描述TC;
(2) 操作准则OC。
思考:引导学生自学本小节的某些知识,结合书上的示例对数学推理有一定了解。
7.6.2解释学习举例
例子:通过解释学习获得一个物体(x)可安全放置到另一个物体(y)上的概念。
7.7 神经学习
教学内容:讨论基于神经网络学习的基本原理。
教学重点:基于反向传播网络的学习,基于Hopfield网络的学习。
教学难点:上述两种神经学习的算法。
教学方法:课堂讲授为主。
教学要求:掌握上述神经学习的结构,了解神经学习的算法。
7.7.1基于反向传播网络的学习
反向传播算法是一种计算单个权值变化引起网络性能变化值的较为简单的方法。由于BP算法过程包含从输出节点开始,反向地向第一隐含层(即最接近输入层的隐含层)传播由总误差引起的权值修正,所以称为"反向传播"。反向传播特性与所求解问题的性质和所作细节选择有极为密切的关系。
7.7.2基于Hopfield网络的学习
反馈神经网络,它是一种动态反馈系统,比前馈网络具有更强的计算能力。
Hopfield网络是一种具有正反相输出的带反馈人工神经元。Hopfield网络系统不仅能够实现联想记忆,而且能够执行线性和非线性规划等优化求解任务。
7.8 知识发现
教学内容:知识发现的发展过程和定义,知识发现的处理过程,知识发现的方法和应用。
教学重点:知识发现的处理过程,知识发现的方法。
教学难点:知识发现的方法
教学方法:通过实例激发学生对知识发现的学习兴趣,进而重点讲解知识发现的过程和方法。
教学要求:重点掌握知识发现的过程,了解知识发现的方法,了解知识发现的应用。
7.8.1知识发现的发展和定义
1.知识发现的产生和发展
知识发现最早是于1989年8月在第11届国际人工智能联合会议的专题讨论会上提出。随着互联网的发展,网上已设立了不少研究KDD的网站、论坛和新闻报导。在研究的基础上,也出现一些KDD产品和应用系统,引起企业界的关注。
2.定义:数据库中的知识发现是从大量数据中辨识出有效的、新颖的、潜在有用的、并可被理解的模式的高级处理过程。
(1)数据集:是指一个有关事实F的集合,它是用来描述事物有关方面的信息,是进一步发现知识的原材料。
(2)新颖:经过知识发现提取出的模式必须是新颖的。
(3)潜在有用:提取出的模式应该是有意义的,这可以通过某些函数的值来衡量。
(4)可被人理解:知识发现的一个目标就是将数据库中隐含的模式以容易被人理解的形式表现出来,从而帮助人们更好地了解数据库中所包含的信息。
7.8.2知识发现的处理过程
1、数据选择。根据用户的需求从数据库中提取与KDD相关的数据。
2、数据预处理。主要是对上述数据进行再加工,检查数据的完整性及数据的一致性,对丢失的数据利 用统计方法进行填补,形成发掘数据库。
3、数据变换。即从发掘数据库里选择数据。
4.数据挖掘。根据用户要求,确定KDD的
目标是发现何种类型的知识。
5、知识评价。这一过程主要用于对所获得的
规则进行价值评定,以决定所得的规则是否存入基础知识库。
上述KDD全过程的几个步骤可以进一步归纳为三个步骤,即数据挖掘预处理(数据挖掘前的准备工作)、数据挖掘、数据挖掘后处理(数据挖掘后的处理工作)。
简单介绍几种新的对数据发掘的改进过程。
举例:参照上述的处理过程,举出具体实例,详细讲述每步的过程。
7.8.3知识发现的方法
知识发现的方法有统计方法、机器学习、神经计算和可视化方法等。
1、统计方法
统计方法是从事物的外在数量上的表现去推断该事物可能的规律性。
2、机器学习方法
可能用于机器发现的机器学习方法有:
(1) 规则归纳。规则反映数据项中某些属性或数据集中某些数据项之间的统计相关性。
(2) 决策树。决策树的每一个非终叶节点表示所考虑的数据项的测试或决策。
(3) 范例推理。范例推理是直接使用过去的经验或解法来求解给定的问题。
(4) 贝叶斯信念网络。贝叶斯信念网络是概率分布的图表示。
(5) 科学发现。科学发现是在实验环境下发现科学定律。
(6) 遗传算法。在求解过程中,通过最好解的选择和彼此组合,使期望解的集合愈来愈好。
3、神经计算方法
4、可视化方法
可视化(visualization)就是把数据、信息和知识转化为可视的表示形式的过程。
举例:举出几个具体的实例让学生对机器学习的几种方法有基本了解。
7.8.4知识发现的应用
知识发现已在许多领域得到应用,且应用领域越来越广。现在,知识发现已在银行业、保险业、零售业、医疗保健、工程和制造业、科学研究、卫星观察和娱乐业等行业和部门得到成功应用,为人们的科学决策提供很大帮助。
思考:举出有关的几种应用,再想想再现实生活中是否有其它的应用。
7.9小 结
本章只对机器学习作个入门介绍。
机器学习在过去十多年中获得较大发展。今后机器学习将在理论概念、计算机理、综合技术和推广应用等方面开展新的研究。其中,对结构模型、计算理论、算法和混合学习的开发尤为重要。在这些方面,有许多事要做,有许多新问题需要人们去解决。