归纳和分析学习的结合Word格式文档下载.docx
- 文档编号:21106951
- 上传时间:2023-01-27
- 格式:DOCX
- 页数:24
- 大小:88.57KB
归纳和分析学习的结合Word格式文档下载.docx
《归纳和分析学习的结合Word格式文档下载.docx》由会员分享,可在线阅读,更多相关《归纳和分析学习的结合Word格式文档下载.docx(24页珍藏版)》请在冰豆网上搜索。
通过两者的结合,有望开发出更通用的学习方法,可以覆盖较广的学习任务。
表12-1纯粹的分析学习和纯粹归纳学习的比较
归纳学习
分析学习
目标
拟合数据的假设
拟合领域理论的假设
论证
统计推理
演绎推理
优点
需要很少先验知识
从稀缺的数据中学习
缺陷
稀缺的数据,不正确的偏置
不完美的领域理论
插图——原书页码:
336
Inductivelearning:
归纳学习
Plentifuldata:
丰富的数据
Nopriorknowledge:
无先验知识
Analyticallearning:
分析学习
Perfectpriorknowledge:
完美的先验知识
Scarcedata:
稀缺的数据
图12-1学习任务的分布范围。
在最左端,没有可用的先验知识,因此需要纯粹的归纳学习方法以及较高的样本复杂度。
在最右端,有完美的领域理论,可以使用如Prolog-EBG这样的纯粹分析方法。
更多的实际问题位于这两个极端之间。
图12-1概述了学习问题的分布范围,它随着可获得的先验知识和训练数据不同而变化。
在一个极端,有大量的训练数据,但没有先验知识。
在另一极端,有很强的先验知识,但训练数据很少。
多数实际学习问题位于这两个极端之间。
例如,分析医疗记录的数据库以学习“用治疗手段x比治疗手段y更有效的病症”,通常可以开始于近似的先验知识(如疾病中内在的因果机制的定性模型),比如认定患者的体温比他的姓名更相关。
类似地,在分析一个股票市场数据库以学习目标概念“股票值在后10个月会翻番的公司”中,如果已有了经济学的大概知识,可以提出公司的总利润比公司标志的颜色更相关。
在这两种问题中,我们的先验知识是不完整的,但显然,它有助于区分相关和不相关的特征。
本章考虑的问题是:
“我们可以设计出怎样的算法,使用近似的先验知识结合可用数据来形成一般假设?
”注意,即使在使用纯粹的归纳学习算法时,仍有机会基于特定学习任务的先验知识来选择设计方案。
例如,当应用反向传播来解决语音识别这样的问题时,设计者必须选择输入和输出数据的编码方式、在梯度下降中被最小化的误差函数、隐藏单元的数量、网络的拓扑结构、学习速率和冲量等。
在做这些选择时,设计者可以将领域特定的知识嵌入到学习算法中。
然而结果仍然是纯粹的归纳算法反向传播的一个实现,由设计者特殊化后针对语音识别任务。
我们的感兴趣的不在于此,而在于一个系统能将先验知识作为显式的输入给学习器,训练数据也同样作为显式输入。
这样它们仍为通用的算法,但利用了领域特定的知识。
简要地概括一下,我们感兴趣的是使用显式输入的领域相关知识的领域无关算法。
对于结合了归纳和分析学习的不同方法,应使用什么样的准则来比较它们呢?
由于学习器一般不能预先知道领域理论和训练数据的质量。
我们感兴趣的是能对图12-1整个问题系列都可操作的一般方法。
这样的学习方法应具有以下的特殊属性:
∙如果没有领域理论,它至少能像纯粹的归纳方法一样有效学习。
∙如果有完美的领域理论,它至少能像纯粹的分析方法样有效学习。
∙如果领域理论和训练数据都不完美,它应能结合两者的长处,比单纯的归纳或分析方法的性能都要好。
∙它应能处理训练数据中未知程度的差错。
∙它应能处理领域理论中未知程度的差错。
注意这里列出的期望目标很难达到。
例如,处理训练数据中的差错,即使在基于统计的归纳方法中,如果没有某些先验知识和对差错分布的假定,这仍是值得研究的问题。
结合归纳和分析学习的方法是当前活跃的研究领域。
虽然上面列出的是我们希望算法能达到的美好性质,目前没有算法能以完全一般化的方式满足所有这些约束。
下一节对结合归纳-分析学习的问题作出了更详细的讨论。
后面几节描述了3种不同的途径,结合近似的先验知识和可用数据来指导学习器搜索合适的假设。
每种途径都已在多个问题领域中显示出有超出纯归纳方法的性能。
为方便比较,我们使用同一例子来说明3种途径。
12.2学习的归纳-分析途径
12.2.1学习问题
概而言之,本章考虑的学习问题为:
已知:
∙一个训练样例集合D,可能包含差错
∙一个领域理论B,可能包含差错
∙候选假设的空间H
求解:
∙一个最好地拟合训练样例和领域理论的假设
“最好地拟合训练样例和领域理论”这句话确切含义是什么?
或者说,是否会选择一个拟合数据程度较好而拟合理论较差的假设,或反之?
为了更精确起见,需要定义对应数据和对应于领域理论的假设错误率度量,然后用这些错误率来表示这个问题。
回忆第5章中errorD(h)定义为D中被h误分类的样例所占比例。
可定义h关于领域理论B的错误率errorB(h)为,h与B在分类一个随机抽取实例时不一致的概率。
接下来就可尝试用这些错误率的形式刻画所希望的输出假设。
例如,我们可以要求假设使上述错误率的某种综合度量最小化,如:
虽然粗看起来这很合理,但还不清楚怎样确定kD和kB的值,以指定拟合数据和拟合理论两者的相对重要程度。
如果有非常差的理论,却有大量可靠数据,最好使errorD(h)的权值更大。
如果有很强的理论,而数据样本很小且存在大量噪声,把errorB(h)的权值增大会得到最好的结果。
当然如果学习器预先不知道领域理论和训练数据的质量,它就不清楚该怎样为这两部分错误率加权。
怎样确定先验知识和数据权值这一问题,另一种解决方法是使用贝叶斯的观点来考虑。
回忆一下第6章,贝叶斯定律描述了怎样计算给定训练数据D时假设h的后验概率P(h|D)。
确切地讲,贝叶斯定律计算此后验概率是基于观察到的数据D以及先验知识的,以P(h)、P(D)和P(D|h)的形式表示。
因此我们可把P(h)、P(D)和P(D|h)看作是某种形式的背景知识或领域理论,而且可把贝叶斯理论看成一种为领域理论加权的方法,它与观察到的数据D一起,赋予h的后验概率为P(h|D)。
按照贝叶斯的观点,所选择的假设应为后验概率中最大的一个,并且贝叶斯公式提供了为此先验知识和观察到数据的贡献加权的良好方法。
不幸的是,贝叶斯公式隐含假定了拥有关于P(h)、P(D)和P(D|h)概率分布的完美的知识。
当这些量只是近似已知时,单独贝叶斯公式没有规定如何将其与观察数据结合起来。
(在此情况下一种方法是假定有P(h),P(D)和P(D|h)之上的先验概率分布,然而后计算后验概率P(h|D)的期望值。
然而这要求有P(h),P(D)和P(D|h)之上的先验分布方面的附加知识,因此并没有真正解决此问题。
)
当考虑特定算法时,我们会再次考虑“最佳”拟合假设和数据是什么含义。
现在,我们只是简单地称学习问题是为了使假设在数据和领域理论上错误率的某种综合度量最小化。
12.2.2假设空间搜索
如何将领域理论和训练数据最好地结合起来,以限制可接受假设的搜索?
这在机器学习中仍是待研究的问题。
本章考察了几种已提出的方法,其中许多要对已讨论过的归纳方法(如反向传播,FOIL)进行扩展。
为了解可能途径的范围,一种办法是回到前面对学习的看法,即将其看作是一种搜索多个可选假设空间的任务。
为了将大多数学习任务刻画为搜索算法,需要定义待搜索的假设空间H,搜索的开始点初始假设h0,定义单个搜索步的搜索算子集合O,以及指定搜索目标的目的判据G。
本间中探索了3种方法使用先验知识来改变纯归纳方法中执行的搜索。
∙使用先验知识推导出搜索起步的初始假设。
用这种方法,领域理论B被用于建立一个与B一致的初始假设h0。
然后以这个初始假设h0为起点应用标准归纳方法。
例如,下面描述的KBNN系统是按这种方法学习人工神经网络的。
它使用先验知识来设计初始网络的互联结构和权值,这样,此初始网络与给定的领域理论完全一致。
然后此初始网络假设使用反向传播算法和训练数据被归纳地精化。
从一个与领域理论一致的假设开始搜索,使得最终输出假设更有可能拟合此理论。
∙使用先验知识来改变假设空间搜索的目标。
在这种方法中,目的判据G被修改,以要求输出假设拟合训练样例的同时也拟合领域理论。
例如,下面描述的EBNN系统以这种方法学习神经网络。
神经网络的归纳学习执行梯度下降来使网络在训练数据上的误差平方最小化,而EBNN中执行梯度下降来优化另一个判据。
这个修改的判据包含一个附加项,它衡量了学习到的网络相对于领域理论的误差。
∙使用先验知识改变可用的搜索步。
在此方法中,领域理论修改了搜索算子集合O。
例如,下面描述的FOCL系统以这种方法学习Horn子句集。
它基于归纳系统FOIL。
FOIL在可能的Horn子句空间上执行贪婪搜索,每步通过加入一个新文字来修正当前假设。
FOCL在修正假设中使用领域理论来扩展可用的文字集合。
它允许在单个搜索步中加入多个文字,只要它们能由领域理论保证其正确性。
以这种方式,FOCL在假设空间中移动一步相当于使用原来的算法移动多步。
这些“宏移动”(macro-moves)可极大地改变搜索的方向,这样最终的与数据一致的假设与只使用归纳搜索步时找到的假设不同。
下面几节依次介绍了这几种方法。
12.3使用先验知识得到初始假设
一种使用先验知识的方法是,将假设初始化为完美拟合领域理论,然后按照需要归纳地精化此初始假设以拟合训练数据。
这种方法被用于KBANN(Knowledge-BasedArtificialNeuralNetwork,基于知识的人工神经网络)算法中。
在KBANN中,首先建立了一个初始的网络。
对每个可能实例,网络赋予它的分类等于领域理论赋予的分类。
然后应用了反向传播算法来调整初始网络,使其拟合训练样例。
很容易看出,该技术的动机在于:
如果领域理论是正确的,初始假设将正确分类所有训练样例,而无需再对其修正。
然而,如果初始假设不能完美地分类训练样例,那么它需要被归纳精化,以改进其在训练样例上的拟合度。
回忆在纯粹归纳的反向传播算法中,权值一般被初始化为小的随机值。
KBANN背后的直观含义在于,即使领域理论是近似正确的,将网络初始化为拟合领域理论,比初始化为随机权值有更好的近似开端。
这应该会得到有更好的泛化精度的最终假设。
这种使用领域理论来初始化假设的途径已经被许多研究者探索过。
包括Shavlik&
Towell(1989),Towell&
Shavlik(1994),Fu(1989,1993)和Pratt(1993a,1993b)。
我们将使用Shavlik&
Towell(1989)描述的KBANN算法来例示这一途径。
12.3.1KBANN算法
KBANN运用领域理论来初始化假设。
其中假定领域理论用一组命题形式的非递归的Horn子句来表示。
命题形式Horn子句表示它不包含变量。
KBANN的输入和输出如下:
∙一组训练样例
∙由非递归命题型Horn子句组成的领域理论
∙一个拟合训练样例的,被领域理论偏置的人工神经网络
表12-2KBANN算法
领域理论被转换为等效的神经网络(步骤1-3),然后用反向传播算法归纳精化(第4步)。
W常量的值可取为0.4。
KBANN(Domain_Theory,Training_Examples)
Domain_Theory:
非递归命题型Horn子句集合
Training_Examples:
目标函数的<
input,output>
对的集合
分析步:
创建一个等价于领域理论的初始网络
1.对每个实例属性创建一个网络输入
2.对Domain_Theory的每个Horn子句,如下创建一个网络单元
连接此单元的输入到此子句的先行词测试的属性
对子句的每个非负先行词,赋予权值W给对应的sigmoid单元输入
对子句的每个负先行词,赋予权值-W给对应的sigmoid单元输入
设置此单元的阈值w0为-(n-0.5)W,其中n为子句的非负先行词的数目
3.在网络单元之间增加附加的连接,连接深度为i的每个网络单元到深度为i+1的所有网络单元的输入层上。
赋予这些附加的连接为接近0的随机权值。
归纳步:
精化此初始网络
4.应用反向传播算法来调整初始网络权值以拟合Training_Examples
KBANN算法包含两个阶段,首先它创建一个完美拟合领域理论的人工神经网络,然后使用反向传播算法来精化初始网络以拟合训练样例。
算法的细节,包括创建初始网络的算法在表12-2中列出,并将在12.3.2节说明。
表12-3Cup学习任务
表中列出了目标概念Cup的一组近似领域理论和一组训练样例。
领域理论:
Cup←Stable,Liftable,OpenVessel
Stable←BottomIsFlat
Liftable←Graspable,Light
Graspable←HasHandle
OpenVessel←HasConcavity,ConcavityPointsUp
训练样例:
Cups
Non-Cups
BottomIsFlat
√
ConcavityPointsUp
Expensive
Fragile
HandleOnTop
HandleOnSide
HasConcavity
HasHandle
Light
MadeOfCeramic
MadeOfPaper
MadeOfStyrofoam
12.3.2一个示例
为例示KBANN的操作,考虑表12-3列出的一个简单的学习问题,它取自于Towell&
Shavlik(1989)并略作改动。
这里每个实例代表一物理对象。
描述了它的物理材料、它的轻重等等。
任务是学习定义在这物理对象上的目标概念Cup。
表12-3描述了Cup目标概念的训练样例和领域理论。
注意领域理论中定义Cup为一个Stable、Liftable以及OpenVessel的对象。
领域理论还把这3个属性定义为更基本的属性,即描述了此实例的原子的、可操作的属性。
注意领域理论并不是与训练样例完全一致的。
例如,领域理论错误地分类第2和第3个训练样例为反例。
不过,领域理论形成了目标概念的有效近似。
KBANN使用领域理论和训练样例一起学习目标概念,可以比单独使用其中一种更精确。
在KBANN算法的第一阶段(算法中的1-3步),构建了一个与领域理论一致的初始网络。
例如,从Cup的领域理论中构建的网络描绘于图12-2中。
一般说来,网络的构建是通过对领域理论中每一Horn子句建立一个sigmoid单元。
KBANN遵从惯例,sigmoid输出值大于0.5时被解释为真,小于0.5则为假。
因此每个单元的构建方法为:
当对应的Horn子句存在时,单元的输出就大于0.5。
对此Horn子句的每个先行词,就建立其对应的sigmoid单元作为输入。
然后设置sigmoid单元的权值,使其计算得出其输入的逻辑与。
确切地讲,对于每个对应于非负先行词的输入,权值被设置为某正常量W。
对每个对应于负先行词的输入,权值设为-W。
单元的阈值权w0设为-(n-0.5)W,其中n为非负先行词的数目。
当单元输入值为1或0时,这保证了当且仅当所有的子句先行词满足时,输入的加权和加上w0为正(而且此sigmoid的输出大于0.5)。
注意对于sigmoid单元,第二层及以后的层中单元输入不一定为1或0,上面的命题无法应用于此。
然而如果为W选择足够大的值,此KBANN算法可以对任意深度的网络进行领域理论编码。
Towell&
Shavlik(1994)在其多数实验中使用W=4.0。
每个sigmoid单元输入被连接到适当的网络输入或另一sigmoid单元的输出,以反映领域理论中对应属性的依赖关系图。
最后一步,又附加了许多输入到每个阈值单元,它们的权值设置近似为0。
这些附加连接的作用是允许网络能归纳学习到的内容可超出领域理论中提出的依赖关系。
图12-2中的粗实线表明权值为W的单元输入,而细线表明初始权值约为0的连接。
很容易验证对于足够大的W值,此网络输出值等于领域理论的预测。
343
图12-2一个等价于领域理论的神经网络
这个网络在KBANN算法的第一阶段创建出来,它产生的输出分类等于给定的领域理论中的子句做的分类。
粗线表示权值为W的连接,对应领域理论中的子句先行词。
细线表示权值近似为0的连接。
KBANN的第二阶段(表12-2中算法的第4步)使用训练样例和反向传播算法来精化初始网络权值。
当然,如果领域理论和训练样例不包含差错,初始的网络就已经拟合训练数据了。
然而在Cup例子中,领域理论与训练数据不一致,所以此步骤会改变初始网络的权值。
得到的训练过的网络显示在图12-3中,粗实线表明最大的正权值,粗虚线表明最大负权值,细线表明可忽略的权值。
虽然初始网络误分类了表12-3中几个训练样例,但图12-3中精化了的网络能完美地分类所有训练例。
有必要比较一下最终归纳精化的网络权值和领域理论导出的初始权值。
如图12-3所见,在归纳步中发现了全新的依赖关系,包括Liftable单元对MadeofStyrofoam的依赖关系。
必须牢记,虽然标有Liftable的单元最初由它的Horn子句定义,但后来由反向传播修改的权值已经完全改变了此隐藏单元的意义。
在网络被训练过后,该单元可能有了与初始的Liftable记号无关的非常不同的意义。
344
图12-3对初始网络归纳精化后的结果
KBANN使用训练样例来修改从领域理论中导出的网络权值。
注意其中新产生的Liftable对MadeOfStyrofoam和HandleOnTop的依赖性。
12.3.3说明
概括地讲,KBANN用分析的方式创建了等价于给定领域理论的网络,然后归纳地精化此初始假设以更好地拟合训练数据。
在此过程中,它为了改变领域理论和训练数据不一致的情况而修改网络权值。
与纯归纳的反向传播(它开始于随机的权值)相比,KBANN的好处在于,它在给定近似正确领域理论时,能够比反向传播有更高的泛化精度,特别是在训练数据稀缺时。
在几种实际系统中,KBANN和其他初始化假设的途径已显示出优于纯归纳的系统。
例如,Towelletal.(1990)描述了将KBANN应用于分子遗传问题。
其中的任务是学习识别称为激发区域(promoterregion)的DNA片断,它影响基因的活性。
在此实验中,KBANN的领域理论从一个分析遗传学家那里获取,而激发区域的训练样例中包含53个正例和53个反例。
性能评估使用了“留一法”(leave-one-out),系统运行106次。
每次循环中KBANN用105个样例训练,并在剩余的1个上测试。
这106次实验的结果被积聚起来提供对真实错误率的估计。
KBANN错误率为4/106,而标准的反向传播错误率为8/106。
KBANN的一个变种由Fu(1993)实现,它报告在同样数据上的错误率为2/106。
因此,先验知识在这些实验中很大程度地减小了错误率。
此实验的训练数据可以从万维网址http:
//www.ics.uci.edu/~mlearn/MLReository.html上得到。
Fu(1993)和Towelletal.(1990)都报告:
从最终训练过的网络中抽取的Horn子句,可提供一个能更好拟合训练数据的领域理论。
虽然有时可能从学习到的网络权值映射回一个精化的Horn子句集,但在一般情形下这种作法是有问题的。
因为某些权值设置没有直接对应的Horn子句。
Craven&
Shavlik(1994)和Craven(1996)描述了另外的方法以从学习过的网络中抽取符号规则。
为理解KBANN的定义,有必要考虑其中的假设搜索与纯归纳的反向传播算法中有什么区别。
这两种算法中执行的假设空间搜索在图12-4中示意。
如其中显示的,关键区别在于执行权值调节所基于的初始假设。
在有多个假设(权值向量)能拟合数据的情况下(这种情况在训练数据稀缺时更可能出现),KBANN更有可能收敛到这样的假设,它从训练数据中的泛化与领域理论的预测更相似。
另一方面,反向传播收敛到的特定假设更可能是小权值的假设,它大致对应于在训练样例间平滑插值的泛化偏置。
简要地说,KBANN使用一个领域特定的理论来偏置泛化,而反向传播算法使用一个领域无关的语法偏置(偏向于小的权值)。
注意在此概述中我们忽略了搜索中局部极小值的影响。
346
HypothesisSpace:
假设空间
Hypothesesthatfittrainingdataequallywell:
以同样程度拟合训练数据的假设
InitialhypothesisforKBANN:
KBANN的初
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 归纳 分析 学习 结合