机器学习-学习规则集合.ppt
《机器学习-学习规则集合.ppt》由会员分享,可在线阅读,更多相关《机器学习-学习规则集合.ppt(53页珍藏版)》请在三一办公上搜索。
1、机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,1,机器学习,第10章 学习规则集合,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,2,概述,对学习到的假设,最具有表征力的和最能为人类所理解的表示方法之一是if-then规则的集合本章探索若干能学习这样的规则集合的算法其中,最重要的是学习包含变量的规则集合,或称一阶Horn子句集合由于一阶Horn子句集合可被解释为逻辑编程语言Prolog中的程序,学习的过程常被称为归纳逻辑编程本章考察了多种学习规则集合的途径,其中一种是基于机器定理证明器中演绎算子的逆转,机器学习-学习规则集合 作者
2、:Mitchell 译者:曾华军等 讲者:陶晓鹏,3,简介,在许多情况下,有必要学习一个由若干if-then规则共同定义的目标函数,比如决策树遗传算法本章我们讨论一组不同的算法,它们直接学习规则集合,与前面算法有两点关键的不同可学习包含变量的一阶规则集合(一阶子句的表达能力比命题规则要强得多)使用序列覆盖算法,一次学习一个规则,以递增的方式形成最终的规则集合,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,4,简介(2),一阶规则集合的例子if Parent(x,y)then Ancestor(x,y)if Parent(x,z)Ancestor(z,y)then
3、 Ancestor(x,y)这个规则集合很紧凑地描述了一个递归函数,它很难用决策树或其他命题的方法来表示Prolog程序就是一阶规则的集合,因此一个可以学习这种规则集合的通用算法,可被看作是从样例中自动推导出Prolog程序的算法一阶表示的学习系统在实践中的应用在质谱仪中学习哪一个化学药品能粘合碎片学习哪一个化学亚结构会产生诱导有机体突变的放射性物质学习有限单元网以分析物理结构中的应力,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,5,内容安排,先介绍能够学习命题规则集的算法(命题规则可看作不含变量的一阶规则),算法搜寻假设空间学习析取规则集合将上面算法扩展到一
4、阶规则讨论归纳逻辑的两种通用途径以及归纳和演绎推理的基本关系,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,6,序列覆盖算法,序列覆盖算法学习一个规则,移去它覆盖的数据,再重复这一过程假定已有一个子程序Learn-One-Rule,它的输入是一组正例和反例,输出是单个规则,它能够覆盖许多正例而覆盖很少的反例我们要求输出的规则有较高的精确度,但不必有较高的覆盖度,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,7,序列覆盖算法(2),序列覆盖算法的过程在所有可用训练样例上执行Learn-One-Rule再移去由其学到的规则覆盖的正例重
5、复上面的过程,直到规则集覆盖正例达到希望的程度序列覆盖算法按次序学习到一组规则,它们共同覆盖了全部正例规则集中的规则可排序,分类新实例时可先应用精度最高的规则,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,8,表10-1 学习析取规则集的序列覆盖算法(CN2),Sequential-Covering(Target_attribute,Attributes,Examples,Threshold)Learned_rulesRuleLearn-One-Rule(Target_attribute,Attributes,Examples)当Performance(Rule
6、,Examples)ThresholdLearned_rulesLearned_rules+RuleExamplesExamples-被Rule正确分类的样例RuleLearn-One-Rule(Target_attribute,Attributes,Examples)Learned_rules按照在Examples上的Performance排序的Learned_rules返回Learned_rules,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,9,序列覆盖算法(3),序列覆盖算法将问题化简为一系列简单的问题,执行的是一种贪婪搜索,它不能保证找到能覆盖样例的
7、最小或最佳规则集下面重点讨论Learn-One-Rule的设计,我们希望算法能够得到较高精度的规则集,但不必覆盖所有的正例,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,10,一般到特殊的柱状搜索,一种方法是,将假设空间搜索过程设计为与ID3算法中相似的方式,但在每一步只沿着最有希望的分支进行,即产生最佳性能的属性-值对,而不是用增长子树的办法覆盖所选属性的所有可能值与ID3类似,可定义最佳分支,它覆盖的样例有最低的熵与其他贪婪算法一样,上面算法的缺陷是,它的每一步都可能做出次优的选择用柱状搜索来减小风险,即每一步保留k个最佳候选分支,每一步对k个候选分支进行处
8、理,然后再将结果集削减至k个最可能成员,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,11,表10-2 Learn-One-Rule的一种实现:一般到特殊柱状搜索,Learn-One-Rule(Target_attribute,Attributes,Examples,k)初始化Best_hypothesis为最一般的假设初始化Candidate_hypotheses为集合Best_hypothesis当Candidate_hypotheses不空,做以下操作生成下一个更特殊的候选假设All_constraints所有形式为(a=v)的约束集合,其中,a为Attr
9、ibutes的成员,v为出现在当前Examples集合中的a的值New_candidate_hypotheses对Candidate_hypotheses中每个h,循环对All_constraints中每个c,循环通过加入约束c创建一个h的特化式New_candidate_hypotheses中移去任意重复的、不一致的或非极大特殊化的假设更新Best_hypothesis对New_candidate_hypotheses中所有h做以下操作如果Performance(h,Examples,Target_attribute)Performance(Best_hypothesis,Examples,
10、Target_attribute)则Best_hypothesish更新Candidate_hypothesesCandidate_hypothesesCandidate_hypotheses中k个Performance最佳成员返回如下形式的一个规则“如果Best_hypothesis”,则prediction其中,prediction为在与Best_hypothesis匹配的Examples中最频繁的Target_attribute值,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,12,表10-2 Learn-One-Rule的一种实现:一般到特殊柱状搜索(2
11、),Performance(h,Examples,Target_attribute)h_examples与h匹配的Examples子集返回-Entropy(h_examples),Entropy是关于Target_attribute的熵,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,13,对表10-2的Learn-One-Rule算法的说明,算法主循环中考虑的每个假设都是属性-值约束的合取每个合取假设对应于待学习规则的候选前件集合,它由其覆盖的样例的熵来评估搜索算法不断特化候选假设,直到得到一个极大特殊假设,它包含所有可用的属性规则的后件在算法的最后一步产生,在
12、其前件确定后,算法构造出的规则后件用于预测在前件所能覆盖的样例中最常见的目标属性值尽管使用了柱状搜索,贪婪搜索仍可能产生次优的规则,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,14,序列覆盖算法的几种变型,只学习覆盖正例的规则,对该规则没有覆盖的实例默认地赋予其反例分类正例在整个群体中所占比例很小,所以规则集只标定正例的类别,而对其他样例默认分类为反例,这样规则集更简洁易懂这一方法对应于Prolog中的失败否定策略,其中不能证明为真的表达式都默认为假需要修改Learn-One-Rule算法增加输入变量,指定感兴趣的目标值Performance使用假设覆盖正例的
13、比例,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,15,序列覆盖算法的几种变型(2),AQ算法AQ明确地寻找覆盖特定目标值的规则,然后,对每个目标值学习一个析取规则集AQ算法学习单个规则的方法也不同于Learn-One-Rule,当它对每个规则执行一般到特殊柱状搜索时,他围绕单个正例来进行搜索中只考虑被某正例满足的属性,以得到逐渐特殊的假设,每次学一个新规则时,它从那些未覆盖的样例中也选择一个新的正例,以指引新析取项的搜索,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,16,学习规则集:小结,串行与并行的差异序列学习算法(CN2
14、)每次学习一个规则,而ID3每一步并行学习整个析取项的集合,ID3可称为并行覆盖算法ID3在每一搜索步中根据它对数据产生的划分选择不同的属性,CN2选择的是不同的属性-值对为了学习到n个规则的集合,每个规则前件包含k个属性值测试,CN2需要nk次基本搜索步,而ID3独立选择次数要少得多CN2需要较大数量的训练数据,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,17,学习规则集:小结(2),搜索方向的差异Learn-One-Rule的搜索方向是从一般到特殊,而其他算法是从特殊到一般从一般到特殊的一个优点是只有一个极大一般假设可作为搜索起始点而多数假设空间中有很多特
15、殊假设,因此有许多极大特殊假设,从特殊到一般的算法难以确定搜索的起点,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,18,学习规则集:小结(3),生成再测试与样例驱动搜索的差异样例驱动搜索算法包括:Find-S、候选消除、AQ算法、Gigol样例驱动算法中,对假设的生成或修正是由单独的训练样例驱动的,而且结果是一个已修正的假设,它对此单个样例的性能得到改善Learn-One-Rule是生成再测试搜索生成再测试搜索方法中,后续的假设的生成只基于假设表示的语法,然后基于这些假设在全部样例上的性能来进行选择生成再测试的一个优点是搜索中每一步的选择都基于在许多样例上的假
16、设性能,因此噪声数据的影响被最小化,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,19,学习规则集:小结(4),规则的后修剪和后修剪的方法Learn-One-Rule也有可能形成过度拟合,解决的方法也可以是后修剪性能函数的定义相对频率:令n代表规则所匹配的样例数目,nc代表其中它能正确分类的数目,则规则性能的相对频率估计为精度的m-估计:令p为从整个数据集中随机抽取的样例与该规则赋予的分类相同的先验概率,令m为权,或称对此先验概率p进行加权的等效样例数目熵:令S为匹配规则前件的样例集合,熵衡量的是该样例集合中目标函数的均一性,机器学习-学习规则集合 作者:Mit
17、chell 译者:曾华军等 讲者:陶晓鹏,20,学习一阶规则,本节考虑带有变量的规则,即一阶Horn子句,它们比命题规则有强得多的表征能力一阶规则的归纳学习通常被称为归纳逻辑编程,因为这一过程可看作从样例中自动推导出Prolog程序命题规则过于特殊了,不能描述属性值之间的实质关系,对今后的分类几乎不起作用,一阶规则能够表示更一般的规则一阶Horn子句还可指定前件中的变量不出现在后件中的规则,这种变量可以被存在量词或全称量词修饰还可能在规则的后件和前件中使用相同的谓词描述递归的规则,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,21,术语,所有的一阶表达式由常量、
18、变量、谓词符号以及函数符号组成谓词和函数的区别是谓词只能取真或假(特殊的函数),而函数的取值可为任意常量通常用小写符号表示函数,大写符号表示谓词术语:项:任意常量、任意变量、应用到任意项上的任意函数文字:应用到项上的任意谓词或其否定,如果包含否定符号,称为负文字,否则称为正文字,不包含任何变量的称为基本文字子句:多个文字的任意析取,其中所有的变量假定是全称量化的Horn子句:至多包含一个正文字的子句,Horn子句的前件被称为子句体或子句先行词,后件被称为子句头或子句推论置换:将文字L的某些变量替换为某些项的函数,记为L。如果置换使得L1=L2,那么称为L1和L2的合一置换,机器学习-学习规则集
19、合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,22,学习一阶规则集:FOIL,FOIL学习的规则类似Horn子句,但有两个不同:比Horn子句更受限,因为文字不允许包含函数符号比Horn子句更有表征力,因为规则体中的文字可以是负文字,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,23,表10-4 基本的FOIL算法,FOIL(Target_predicate,Predicates,Examples)PosExamples中Target_predicate为True的成员NegExamples中Target_predicate为False的成员Lear
20、ned_rules当Pos不空,学习NewRuleNewRule没有前件的谓词Target_predicate规则NewRuleNeg当NewRuleNeg不空,增加新文字以特化NewRuleCandidate_literature对NewRule生成候选新文字,基于PredicateBest_literal把Best_literal加入到NewRule的前件NewRuleNegNewRuleNeg中满足NewRule前件的子集Learned_rulesLearned_rules+NewRulePosPos-被NewRule覆盖的Pos成员返回Learned_rules,机器学习-学习规则集合
21、 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,24,FOIL算法的解释,FOIL外层循环中每次加入一条新的规则到其析取式假设Learned_rules中去每个新规则的效果是通过加入一个析取项泛化当前的析取假设这是假设空间的特殊到一般的搜索过程,它开始于最特殊的空析取式,在假设足够一般以至覆盖所有正例时终止FOIL内层循环执行的是细粒度较高的搜索,以确定每个新规则的确切定义内层循环在另一假设空间中搜索,它包含文字的合取,以找到一个合取式形成规则的前件内层循环执行一般到特殊的爬山搜索,开始于最一般的前件,然后增加文字以使规则特化直到避开所有的反例,机器学习-学习规则集合 作者:Mitch
22、ell 译者:曾华军等 讲者:陶晓鹏,25,FOIL算法的解释(2),FOIL与前面的序列覆盖和Learn-One-Rule算法之间有两个最实质的不同,来源于算法对一阶规则处理的需求在学习每个新规则的一般到特殊搜索中,FOIL使用了不同的细节步骤来生成规则的候选特化式,这一不同是为了处理规则前件中含有的变量FOIL使用的性能度量FOIL_Gain不同于表10-2中的熵度量,这是为了区别规则变量的不同约束,以及由于FOIL只搜寻覆盖正例的规则,机器学习-学习规则集合 作者:Mitchell 译者:曾华军等 讲者:陶晓鹏,26,FOIL中的候选特化式的生成,FOIL生成多个不同的新文字,每个可被单
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 机器 学习 规则 集合
链接地址:https://www.31ppt.com/p-6168564.html