商务智能第08章统计方法与贝叶斯网络_第1页
商务智能第08章统计方法与贝叶斯网络_第2页
商务智能第08章统计方法与贝叶斯网络_第3页
商务智能第08章统计方法与贝叶斯网络_第4页
商务智能第08章统计方法与贝叶斯网络_第5页
已阅读5页,还剩76页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第八章 贝叶斯(Bayes)分类主要内容 贝叶斯(Bayes)定理1朴素贝叶斯分类2贝叶斯信念网络38.1 贝叶斯定理贝叶斯学派奠基性的工作是贝叶斯的论文“关于几率问题求解的评论”。20世纪50年代,以罗宾斯为代表,提出了经验贝叶斯方法和经典方法相结合,引起统计界的广泛注意,这一方法很快就显示出它的优点,成为很活跃的一个方向。统计学中有两个主要学派:频率学派和贝叶斯学派,他们之间既有共同点,又有不同点。贝叶斯学派是数理统计学中的一大流派,贝叶斯概率与传统概率之间最大的区别在于他们对某个事件概率的定义是不一样的经典概率定义一个事件的概率是确定的,并且是客观的,而贝叶斯概率认为,一个事件的概率是确

2、定这个概率的人的主观判断,即传统概率是客观认识,而贝叶斯概率是主观判断。8.1 贝叶斯定理贝叶斯概率简单地说,某一事件x的贝叶斯概率是观测者对该事件发生的相信程度,观测者根据先验知识和现有的统计数据,用概率的方法来预测未知事件发生的可能性。贝叶斯概率不同于普通意义上的事件的客观概率,客观概率是在多次反复实验中事件发生的频率的近似值,而贝叶斯概率则是利用已有的知识对未知事件出现频率的预测(比如你会相信硬币落地出现正面的概率),不需要反复做实验。 在许多应用中,属性集和类变量之间的关系是不确定的 (尽管测试记录的属性集和某些训练样本相同) 无法确定地预测其类标号 (可能是由于噪声,或者出现了某些影

3、响分类的因素,却没有包含在分析中)8.1 贝叶斯定理【例】考虑一个人的饮食和锻炼的频率来预测他是否患有心脏病 由于遗传、吸烟过量、酗酒等影响因素 没有考虑进去。 所以,不能确定地给出其是否患有心脏病(类标号)的判断结论:给出某一测试记录属于某一分类的概率是必要的。贝叶斯分类器 【例】考虑两个队之间的足球比赛:队0和队1。假设65%的比赛队0胜出,剩余的比赛队1获胜。队0获胜的比赛中只有30%是在队1的主场,而队1获胜的比赛中75%是主场获胜,如果下一场比赛在队1的主场进行,哪一支球队最有可能胜出?8.1 贝叶斯定理【例】两个球队比赛队0: 胜率 65% ,客场获胜率 30% 队1: 胜率 35

4、% ,主场获胜率 75%问题:如果下一场比赛在队1 的主场进行,哪一支球队最有可能获胜?基本概念: X 、Y 是两个随机变量,则 联合概率 P(X=x , Y=y) 条件概率 P(X=x l Y=y)二者之间有关系: P(X,Y) = P(Y l X) P(X) = P(X l Y) P(Y)即:这就是 贝叶斯定理8.1 贝叶斯定理我们现在来解决前面提出的问题:设:变量:东道主球队变量:获胜球队、可以在,中取值则:队取胜的概率解:P(Y=1X=1) = 0.5738队取胜的概率队取胜时队1作为东道主的概率队作为东道主时取胜的概率P(X=1,Y=1)=0.75P(X=1,Y=0)=0.3P(Y=

5、1)=1- P(Y=0)=0.35P(Y=0)=0.658.1 贝叶斯定理假设X和Y是一对随机变量,X表示属性集,Y表示类变量。P(X,Y)表示他们的联合概率P(Y)称为Y的先验概率P(X)是X的先验概率P(Y|X)是后验概率,或在条件X下,Y的后验概率。P(X|Y)是条件Y下,X的后验概率对于分类问题,希望确定P(Y|X)给定观测数据元组X,假设X属于某特定类Y成立的概率。换言之,给定X的属性描述,找出元组X属于类Y的概率。贝叶斯定理:8.1 贝叶斯定理例 预测一个贷款者是否会拖欠还款。图8.4中的训练集中有如下属性:有房、婚姻状况和年收入。若前还款的贷款者属于类Yes,还清贷款的贷款者属于

6、类No。假设给定一测试记录有如下属性集:X=(有房=否,婚姻状况=已婚,年收入=$120K)。要分类该记录,我们需要利用训练数据中的可用信息计算后验概率P(Yes|X)和P(No|X)。如果P(Yes|X)P(No|X),那么记录分类为Yes,反之,分类为No。Tid 有房婚姻状况年收入拖欠贷款1是单身125K否2否已婚100K否3否单身70K否4是已婚120K否5否离异95 K是6否已婚60 K否7是离异220 K否8否单身85 K是9否已婚75 K否10否单身90 K是8.2 朴素贝叶斯分类朴素贝叶斯(naive Bayes):基于条件概率的贝叶斯定理提出的。通过分析每个“独立的”属性所起

7、的作用,可以确定一个条件概率。将不同的属性对预测所起的作用组合起来就可以用于分类。 这种方法之所以被称为“朴素的”是因为它假设各种属性值之间是独立的。 对于属性集 ,因为 之间相互独立,即 8.2 朴素贝叶斯分类分类测试记录时,朴素贝叶斯分类器对每个类Y计算后验概率:其中P(X)是固定的常数,先验概率P(Y)可以通过训练集中每类样本所占的比例估计。只要找出使 最大的类别y即可。 分类法预测X的类标号为,当且仅当换言之,预测的类标号是使 最大的类 。8.2 朴素贝叶斯分类 的计算视属性的性质有所不同,下面我们描述几种估计分类属性和连续属性的条件概率的方法。 对于分类属性 ,可以用类Y中属性值等于

8、 的样本比例来估计条件概率 。例如,在图8.4给出的训练集中还清贷款的7个人中3个人有房,条件概率P(有房=是|No)等于3/7。拖欠还款的人中单身的条件概率P(婚姻状况=单身Yes)=2/3。 (1)估计分类属性的条件概率8.2 朴素贝叶斯分类朴素贝叶斯分类法使用两种方法估计连续属性的类条件概率:1、可以先把 离散化,然后计算属于类Y的训练样本落在 对应离散区间的比例估计 。离散化的方法在数据挖掘概论一章中讨论过了。估计误差由离散化方法和离散区间的数目决定。如果离散区间的数目太大,则就会因为每一个区间中训练记录太少而不能对 做出可靠的估计。相反,如果区间数目太小,有些区间就会含有来自不同类的

9、记录,因此失去了正确的决策边界。(2)估计连续属性的条件概率8.2 朴素贝叶斯分类2、也可以假设 服从某种概率分布,然后用训练样本估计其中的参数。正态分布通常被用来表示连续属性的类条件概率分布。如果某个数值属性是正态分布,我们使用下式计算对每个类Y,属性X的类条件概率:(2)估计连续属性的条件概率其中, 是所给数值属性的均值,可以用类Y的所有训练记录关于X的样本均值 来估计。是属性的方差,可以用这些训练记录的样本方差 来估计。 8.2 朴素贝叶斯分类例 考虑图8.4中年收入这一属性。该属性关于类No的样本均值和方差如下:(2)估计连续属性的条件概率给定一测试记录,应征税的收入等于120K美元,

10、其拖欠贷款为否的类条件概率计算如下:8.2 朴素贝叶斯分类例 还是以图8.4中的数据集为例,预测测试记录X=(有房=否,婚姻状况=已婚,年收入=$120K)的类标号。我们可以计算每个分类属性的类条件概率,同时利用前面介绍的方法计算连续属性的样本均值和方差,然后利用这些数据计算后验概率P(No|X)和P(Yes|X)。数据元组有三个属性:是否有房、婚姻状况和年收入。类标号属性拖贷款有两个不同值(即是,否)。希望分类的元组为X=(有房=否,婚姻状况=已婚,年收入=$120K)每个类的先验概率P(Y)可以根据训练元组中属于该类的记录所占的比例来估计:P(Yes)=3/10=0.3 P(No)=7/1

11、0=0.78.2 朴素贝叶斯分类贷款分类问题的朴素贝叶斯分类器Tid有房婚姻状况年收入拖欠贷款 1 2 3 4 5 6 7 8 910 是 否 否 是 否 否 是 否 否 否 单身 已婚 单身 已婚 离异 已婚 离异 单身 已婚 单身 125K 100K 70K 120K 95K 60K 220K 85K 75K 90K 否 否 否 否 是 否 否 是 否 是P(有房=是|No)=3/7P(有房=否|No)=4/7P(有房=是|Yes)=0P(有房=否|Yes)=1P(婚姻状况=单身|No)=2/7P(婚姻状况=离异|No)=1/7P(婚姻状况=已婚|No)=4/7P(婚姻状况=单身|Yes)

12、=2/3P(婚姻状况=离异|Yes)=1/3P(婚姻状况=已婚|Yes)=0年收入:如果类=No: 样本均值=110 样本方差=2975如果类=Yes: 样本均值=90 样本方差=258.2 朴素贝叶斯分类使用上面的概率,类条件概率计算如下:P(X|No)=P(有房=否|No)P(婚姻状况=已婚|No)P(年收入=$120K|No) =4/74/70.0072=0.0024P(X|Yes)=P(有房=否| Yes)P(婚姻状况=已婚| Yes)P(年收入=$120K|Yes) =101.210-9=0可得到No类的后验概率 ,其中 是个常量。同理,可以得到类Yes的后验概率等于0,因为它的类条

13、件概率等于0。因为 ,所以对于元组X,朴素贝叶斯分类器预测元组X的类为No。8.2 朴素贝叶斯分类贝叶斯技术的一个重要问题是某个属性值的计数为0。例如前面的例子,拖欠贷款的值为Yes的已婚客户的数目为0。这种情况下,这个属性的类条件概率等于0,则整个类的后验概率就等于0。简单地使用记录比例来估计类条件概率的方法显得太脆弱了,尤其是当训练样本很少而属性数目很大时。一种更极端的情况是,当训练集不能覆盖那么多的属性时,我们可能就无法分类某些测试记录。属性值的计数为0问题8.2 朴素贝叶斯分类拉普拉斯校准或拉普拉斯估计法:以法国数学家Pierre Laplace(17491827)的名字命名,假定训练

14、数据库D很大,使得需要的每个计数加上一个小常数k造成的估计概率的变化可以忽略不计,但可以方便地避免概率值为零。计算概率的对应条件概率变成: 属性值计数为0问题的解决其中,k是称为等价样本大小的参数,p为属性可能值总数的等分。如果属性有两个可能值,则p为0.5。8.2 朴素贝叶斯分类例 在8.4例子中,条件概率P(婚姻状况=已婚| Yes)0,因为类中没有训练样例含有该属性值。使用拉普拉斯估计法,因为属性婚姻状况有3种可能值,所以k=,p=1/3,则条件概率不再是: P(婚姻状况=已婚| Yes)=(0+31/3)/(3+3)=1/6如果假设对类Yes的所有属性p=1/3对类No的所有属性p=2

15、/3,则P(X|No)=P(有房=否|No)P(婚姻状况=已婚|No)P(年收入=$120K|No) =6/106/100.0072=0.0026P(X|Yes)=P(有房=否| Yes)P(婚姻状况=已婚| Yes)P(年收入=$120K|Yes) =4/61/61.210-9=1.310-10类No的后验概率,而类Yes的后验概率,尽管分类结果不变,但是避免了零概率值。属性值计数为0问题的解决8.2 朴素贝叶斯分类首先它易于使用。当变量之间的关系很简单时,这种技术通常会产生很好的效果。该分类与决策树和神经网络分类法的各种比较实验表明,在某些领域,贝叶斯分类法足以它们相媲美。理论上讲,与其他

16、所有分类算法相比,贝叶斯分类具有最小的错误率。贝叶斯分类器的健壮的。因为在从数据中估计条件概率时,孤立的噪声点被平均。通过在建模和分类时忽略样例,朴素贝叶斯分类器也可以处理属性值遗漏问题。如果是 无关属性,那么 几乎变成了均匀分布。 的类条件概率不会对总的后验概率的计算产生影响。朴素贝叶斯分类器的优点8.3 贝叶斯信念网络朴素贝叶斯分类法假定类条件独立,即给定元组的类标号,假定属性的值可以有条件地相互独立。这一假定简化了计算,但似乎太严格了,在实践中,变量之间的依赖可能存在。贝叶斯信念网络说明联合条件概率分布,该方法不要求给定类的所有属性都条件独立,而是允许在变量的子集间定义类条件独立性。提供

17、一种因果关系的图形模型,可以对其进行学习。训练后的贝叶斯信念网络可以用于分类。贝叶斯网络最初是由R.Howard和J.Matheson于1981年提出来的.早期的贝叶斯网络主要在专家系统中用来表述不确定的专家知识。90年代以来,贝叶斯学习一直是机器学习研究的重要方向。由于概率统计与数据挖掘的天然联系,数据挖掘兴起后,贝叶斯网络日益受到重视,再次成为引人注目的热点。近两年研究者们进一步研究了直接从数据中学习并生成贝叶斯网络的方法,包括贝叶斯方法、类贝叶斯方法和非贝叶斯方法,为贝叶斯网络用于数据挖掘和知识发现开辟了道路。这些新的方法和技术还在发展之中,但是己经在一些数据建模问题中显示出令人瞩目的效

18、果。8.3 贝叶斯信念网络贝叶斯信念网络(Bayesian Belief Networks, BBN)也称作信念网络、贝叶斯网络和概率网络,用图形表示一组随机变量之间的概率关系。贝叶斯网络主要由两个部分组成:一、贝叶斯网络的概念有向无环图其中的每一个结点代表一个随机变量;每一条弧(两个结点间连线)代表一个概率依赖。若一条弧从结点Y到结点Z,那么Y就是Z的一个父结点,Z就是Y的一个子结点。给定父结点,每个变量有条件地独立于图中非子结点。变量既可取离散值,也可取连续值。它们既可对应数据集中实际的变量,也可对应数据集中的“隐含变量”,以构成一个关系。(1)一个有向无环图(dag),表示变量之间的依赖

19、关系;(2)一个条件概率表(cpt),把各结点和其直接父结点关联起来。8.3 贝叶斯信念网络一、贝叶斯网络的概念性质:条件独立 贝叶斯网络中的一个结点,如果它的父母结点已知,则该结点条件独立于它的所有非后代结点。ABCCADByx1x2x3x4xd(a)(c)(b)图 使用有向无环图表示概率关系包含所有变量的条件概率表(Conditional Probability Table, CPT)对于一个变量Z,CPT定义了一个条件分布P ( Z|parent (Z) );其中,parent(Z)表示Z的父结点。 除了网络拓扑结构要求的条件独立性外,每个结点还关联一个概率表: (1)如果结点X没有父母

20、结点,则表中只包含先验概率P(X); (2)如果结点X只有一个父母结点Y,则表中包含条件概率P(XY) (3)如果结点X有多个父母结点Y1,Y2,,YK,则表中包含条件概率P(XY1,Y2,Yk)8.3 贝叶斯信念网络例 贝叶斯网络的一个例子,对心脏病或心口痛患者建模。假设图中每个变量都是二值的。心脏病节点(HD)的父节点对应于影响该疾病的危险因素,例如锻炼(E)和饮食(D)等。心脏病节点的子节点对应于该病的症状,如胸痛(CP)和高血压(BP)等。心口痛(Hb)可能源于不健康的饮食,同时又可能导致胸痛。 一、贝叶斯网络的概念锻炼心口痛饮食心脏病血压胸痛HD=YesE=YesD=健康 0.25E

21、=YesD=不健康 0.45E=NoD=健康 0.55E=NoD=不健康 0.75CP=YesHD=YesHb=Yes 0.8HD=YesHb=No 0.6HD=NoHb=Yes 0.4HD=NoHb=No 0.1Hb=YesD=健康 0.2D=不健康 0.85BP=高HD=Yes 0.85HD=No 0.2 E=Yes 0.7D=健康 0.25图 发现心脏病和心口痛病人的贝叶斯网络8.3 贝叶斯信念网络锻炼、饮食等影响疾病的因素对应的节点只包含先验概率,而心脏病、心口痛以及它们的相应症状所对应的节点都包含条件概率。因为空间有限,图中并没有将全部的概率都列举出来,其中 , 中的 表示和x相反的

22、结果。因些,省略的概率可以很容易求得。例如:P(心脏病=No锻炼=No,饮食=健康) =1P(心脏病=Yes锻炼=No,饮食=健康) =10.55=0.45一、贝叶斯网络的概念8.3 贝叶斯信念网络贝叶斯网的构造方法有两种:本节只讨论如何手工构造贝叶斯网,这包括确定网络结构和评估条件概率两个子任务。构造贝叶斯网络(先验贝叶斯网络)一般分为三个步骤二、构造贝叶斯网络通过咨询专家手工构造通过数据分析来获得首先确定变量集和变量域之后确定网络结构最后确定局部概率分布(或局部密度函数)8.3 贝叶斯信念网络这里以信用卡欺骗问题为例说明如何构造贝叶斯网络。二、构造贝叶斯网络1)确定变量集和变量域考虑如何发

23、现信用卡使用中的骗局问题。首先决定模型的变量,假定取5个变量变量名意义F(fraud)是否当前的一笔买卖是骗局G(gas)是否在24小时中有一笔汽油买卖J(jewelry)是否在24小时中有一笔珠宝买卖A(age)信用卡持有者的年龄S(sex)信用卡持有者的性别8.3 贝叶斯信念网络网络拓扑结构可以通过对主观的领域专家知识编码获得,确定网络结构的方法如下:(1)选定一组刻画问题的随机变量 ;(2)选择一个变量顺序 ;(3)从一个空图出发,按照顺序T逐个将变量加入网络结构中;(4)在加入变量 时,网络结构中的变量包括 利用问题的背景知识,从 中去掉对 没有影响的变量;(5)从 中剩余的每一个变量

24、节点添加一条指向 的有向边。二、构造贝叶斯网络2)创建网络结构8.3 贝叶斯信念网络信用卡的问题涉及5个随机变量,利用关于变量因果关系的先验知识分析有关数据和变量之间的关系后,决定变量的顺序为:(F,A,S,J,G),并决定变量之间的条件独立关系:P(A|F)=P(A)P(S|F,A)=P(S)P(J|F,A,S,G)=P(J|F,A,S)P(G|F,A,S)=P(G|F)二、构造贝叶斯网络2)创建网络结构FAGSJ构造贝叶斯网结构的过程 :首先把F加入空图; 接着加入A:假设A和F相互独立, ,因此无需加边; 然后加入S,还是假设S与A和F都相互独立,也无需加边; 之后加入J:假设J同时依赖

25、于F、A和S,所以 ,于是分别从F、A和S画一条到J的边; 最后加入G:假设给定F,G与A、S和J相互条件独立,所以 ,于是从F画一条到G的边. 8.3 贝叶斯信念网络上面的算法保证生成的拓扑结构不包含环。如果存在环,那到至少有一条弧从低序节点指向高序节点,并且至少存在另一条弧从高序节点指向低序节点。由于算法不允许符合低序节点到高序节点的弧存在,因此拓扑结构中不存在环。显然,以上各步可能交叉进行,而不是简单的顺序进行可以完成的。因为网络的结构和参数都是根据背景知识和经验确定的,这样建立的网络又称为先验贝叶斯网络。从不现的变量顺序出发,可能得到不同的网络结构。某些拓扑结构可能质量很差,因为它在不

26、同的节点对之间产生了很多条弧。从理论上讲,可能需要检查所有d!种可能的排序才能确定最佳的拓扑结构,这是一项计算开销很大的任务。在实际应用中,人们往往利用因果关系确定贝叶斯网的结构。在利用因果关系建立起来的贝叶斯网中,变量间的边表示的是因果关系,而非简单的概率依赖关联。二、构造贝叶斯网络2)创建网络结构8.3 贝叶斯信念网络一旦找到了合适的拓扑结构,与各结点关联的概率表就确定了。对这些概率的估计比较容易,与朴素贝叶斯分类器中所用的方法类似。 二、构造贝叶斯网络3)估计每一个节点的概率表中的概率值方法一用先验数据的统计频率和用户的知识确定局部概率 方法二用户通过测试和观察确定局部概率 方法三根据专

27、家的知识确定局部概率 8.3 贝叶斯信念网络例 假设我们对使用图8.7中的BBN来诊断一个人是否患有心脏病感兴趣。下面阐释在不同的情况下如何做出诊断。二、构造贝叶斯网络锻炼心口痛饮食心脏病血压胸痛HD=YesE=YesD=健康 0.25E=YesD=不健康 0.45E=NoD=健康 0.55E=NoD=不健康 0.75CP=YesHD=YesHb=Yes 0.8HD=YesHb=No 0.6HD=NoHb=Yes 0.4HD=NoHb=No 0.1Hb=YesD=健康 0.2D=不健康 0.85BP=高HD=Yes 0.85HD=No 0.2 E=Yes 0.7D=健康 0.25图 发现心脏病

28、和心口痛病人的贝叶斯网络8.3 贝叶斯信念网络在没有任何先验信息的情况下,可以通过计算先验概率P(HD=Yes)和P(HD=No)来确定一个人是否可能患心脏病。为了表述方便,设 表示锻炼的两个值, 健康,不健康表示饮食的两个值。二、构造贝叶斯网络情况一:没有先验信息因为 ,所以,此人不得心脏病的机率略微大一点。8.3 贝叶斯信念网络如果一个人有高血压,可以通过比较后验概率 和 来诊断他是否患有心脏病。为此,我们必须先计算 :二、构造贝叶斯网络情况二:高血压其中 。因此,此人患心脏病的后验概率是: 同理, 。因此,当一个人有高血压时,他患心脏病的危险就增加了。8.3 贝叶斯信念网络假设得知此人经

29、常锻炼身体并且饮食健康。加上这些新信息,此人患心脏病的后验概率:二、构造贝叶斯网络情况三:高血压、饮食健康、经常锻炼身体而此人不患心脏病的概率是:因此模型暗示健康的饮食和有规律的体育锻炼可以降低患心脏病的危险。8.3 贝叶斯信念网络贝叶斯网络本身并没有输入和输出的概念,各结点的计算是独立的,因此,贝叶斯网络的学习既可以由上级结点向下级结点推理,也可以是由下级结点向上级结点的推理。用于数据挖掘的贝叶斯网络方法主要有以下几个特点:(1)贝叶斯网络可以处理不完整和带有噪声的数据集。贝叶斯网络学习模型描述了变量之间的因果联系,这种联系的确定以概率的形式表达。从而解决了数据间的不一致,甚至是相互独立的问

30、题。概率化使得贝叶斯网路学习模型允许样本不完整和噪声的存在。(2)贝叶斯网络学习模型结合了先验信息,并用图形的形式描述数据的相互关系,语义清晰,可理解性强,这将有助于利用数据间的因果关系来进行预测分析。二、构造贝叶斯网络8.3 贝叶斯信念网络(3)由于贝叶斯网络具有因果和概率性语义,有良好可理解性和逻辑性。它自然地将先验信息与概率推理相结合,从而贴近现实问题,有助于优化人们的决策。所以该方法对模型的过分拟合问题是非常鲁棒的。(4)可以综合先验信息和样本数据,既可避免只使用先验信息可能带来的主观偏见和缺乏样本数据时的盲目搜索与冗杂计算,也可以避免只使用后验信息带来的噪音的影响。构造网络可能既费时

31、又费力。然而,一旦网络结构确定下来,添加新变量就十分容易。二、构造贝叶斯网络8.3 贝叶斯信念网络我们把根据用户的先验知识构造的贝叶斯网络称为先验贝叶斯网络,把先验贝叶斯网络和数据相结合而得到的贝叶斯网络称为后验贝叶斯网络。由先验贝叶斯网络到后验贝叶斯网络的过程称为贝叶斯网络学习。或者说,把先验贝叶斯网络和数据相结合而得到后验贝叶斯网络的过程称为贝叶斯网络学习。贝叶斯网络学习是用数据对先验知识的修正(贝叶斯网络是一种知识表示形式),贝叶斯网络能够持续学习,上次学习得到的后验贝叶斯网络变成下一次学习的先验贝叶斯网络.三、贝叶斯网的学习8.3 贝叶斯信念网络为了建立贝叶斯学习网络模型,首先必须确定

32、建立模型的有关变量及其解释。为此,需要确定模型的目标,即确定相关的解释;其次需要建立一个条件独立断言的有向无环图;然后指派局部概率分布。在离散的情况下,需要为每一个变量的父节点集的各个状态指派一个分布。贝叶斯网络学习模型包括结构学习和参数学习,即寻找一个合适的有向无环结构图以及获得每个节点相关的条件概率表两方面。贝叶斯网络学习模型就是一个网络优化过程,其目的就是要找出一个最能真实反映数据变量之间的依赖关系的贝叶斯网络模型。三、贝叶斯网的学习8.3 贝叶斯信念网络贝叶斯网络参数学习有几种不同的情形,包括完全观测、结构已知的参数学习,完全观测、结构未知的参数学习,不完全观测、结构已知的参数学习以及

33、不完全观测、结构未知的参数学习。其中以完全观测、结构已知的参数学习最为简单,下面我们介绍这种参数估计的方法。用贝叶斯网来分析一组数据D,就是要从这组数据出发,找出一个相对于数据在某种意义下最优的贝叶斯网。所得的结果是关于数据D的一个统计模型,称为贝叶斯网模型。三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络贝叶斯网络模型为G=(S,p),其中S为变量集X的网络结构,p为各变量的概率分布。如果该网络表示一个多项分布变量集合的网络,则p可以用条件分布参数化,所有的参数用表示。贝叶斯网络模型表示为变量 的参数用 表示,则X的任何取值的联合分布可以分解为三、贝叶斯网的学习1、参数学习8.3 贝叶斯

34、信念网络如果变量 有 个取值,分别以 表示;并且 的父节点集合有 个取值,分别以 表示,则 的参数为 在 下的条件概率为则设数据D由样本 组成。给定,数据D的条件概率 称为似然度,记为如果固定D而让在其定义域上变动,那么 就是的一个函数,称为的似然函数。 三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络为了计算上的方便,需要做两个假设。第一个假设是,D中各样本在给定参数时相互独立,即第二个假设是,每个样本 的条件概率 分布相同。这两个假设是统计学中的基本假设,统称为独立同分布假设,简称i.i.d.假设。三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络在贝叶斯估计的框架中,参数被视为随机

35、变量,对它进行估计就是计算其后验概率分布 ,以及下一个样本 的概率分布 。为此,首先要选用一个概率分布 来总结关于的先验知识,然后把观测到i.i.d.完整数据 的影响用似然函数 来归纳,最后使用贝叶斯公式将先验分布和似然函数结合,得到的后验分布,即这就是的贝叶斯估计。贝叶斯估计的结果是一个概率分布,它也可以用来进行预测。上式称为 的完全贝叶斯估计。还有其他的估计方法,这里就不多做详解了。三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络的似然函数为根据贝叶斯公式,有这里 是充分统计量,表示数据中满足 和 的样本数量。下面引入两个新的记号,以方便能更加直观地理解后面的内容。如前所述,是所有参数

36、组成的向量; 用 记由 所组成的子向量,它表示所有关于分布 的参数;用 记由 所组成的子向量,包括所有关于变量 的条件概率分布 的参数。三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络为了计算方便,需要对先验概率分布 做如下3个假设:全局独立假设。关于不同变量 的参数相互独立,即局部独立假设。给定一个变量 ,对应于 的不同取值的参数相互独立,即三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络可以用下图所示的贝叶斯网络来表达独立假设。其中,图(a)为一个三节点的贝叶斯网络,图(b)为包含参数变量的贝叶斯网络。每个节点都对应一组参数,并且参数之间相互独立。三、贝叶斯网的学习1、参数学习(a

37、)一个三节点的贝叶斯网络 (b)包含参数变量的贝叶斯网络 8.3 贝叶斯信念网络假设 的先验分布 服从Dirichlet分布 ,即其中()是函数, 是分布的参数,有时称为超参数。当r=2时,Dirichlet分布 就是分布 。假设 为Dirichlet分布 就等于假设关于的先验知识相当于 个虚拟数据样本,其中满足 的样本数为 ,所以, 称为等价样本量。三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络在上述3个假设下,有上式定义的 称为乘积Dirichlet分布。把它代入 得也就是说,的后验分布 也是一个乘积Dirichlet分布, 也具有全局和局部独立性,并且 是Dirichlet分布三、

38、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络接下来考虑下一个数据样本 的概率分布 首先有而三、贝叶斯网的学习1、参数学习另一方面,由于 具有全局独立性,有所以 这个公式说的是, 是S-可分解的,因此可以表示为一个以S为结构的贝叶斯网。 8.3 贝叶斯信念网络用 表示这个贝叶斯网的参数:注意, 与贝叶斯网 的参数 不同: 是一个固定的取值,而 则是一个随机变量。参数 可以按如下公式计算:三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络由于 是Dirichlet分布 ,因此有所以,三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络例 下图所示贝叶斯网S,其中所有变量均取二值,1或2。设图

39、(b)是关于S的一组i.i.d.数据,考虑计算S参数的贝叶斯估计。三、贝叶斯网的学习1、参数学习(a)贝叶斯网S (b)完整数据 8.3 贝叶斯信念网络首先,假设先验分布 是乘积Dirichlet分布,且其超参数 分别如下:三、贝叶斯网的学习1、参数学习这等于是假设关于的先验知识相当于如下的虚拟数据 :它的等价样本量为4 8.3 贝叶斯信念网络由前面可知,后验分布 也是乘积Dirichlet分布,其超参数为 三、贝叶斯网的学习1、参数学习下一样本的分布 可以表示为结构如图(a)所示的贝叶斯网。根据前面所求,其参数 为8.3 贝叶斯信念网络网络变量可以是可观测的,或隐藏在所有或某些训练元组中。隐

40、藏数据的情况也称为缺失值或不完全数据。当网络拓扑给定,而某些变量是隐藏的时,可以选择不同的方法来训练信念网络。我们将介绍一种有希望的梯度下降法。梯度下降法又称最速下降法,它是许多非线性规划算法的一个基础。人们在处理无约束问题时,总希望从某一点出发,选择一个目标函数值下降最快的方法,以利于尽快达到极小点。正是基于这样一种愿望,早在1847年法国数学家Cauchy提出了最速下降法。由于这种方法的每一次迭代都是沿着最速下降方向进行搜索,因此称作最速下降法。 三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络梯度也就是多元函数的一阶导数。设集合 非空,即S是n维欧氏空间中的一个子集,f(x)为定义在

41、S上的实函数。如果f在开集S上连续可微,则函数f在x处的梯度为n维列向量:三、贝叶斯网的学习1、参数学习函数f(x)在点x处沿方向d的变化率可用方向导数来表达,对于可微函数,方向导数等于梯度与方向的内积,即8.3 贝叶斯信念网络因此,求函数f(x)在点x处的下降最快的方向,可归结为求解下列非线性规划:三、贝叶斯网的学习1、参数学习根据Schwartz不等式,有去掉绝对值符号,可以得到由上式可知,当时等号成立。因此,在点x处沿上式所定义的方向变化率最小,即负梯度方向为最速下降方向。8.3 贝叶斯信念网络最速下降法的具体计算步骤如下:第1步:给定初始数据:起始点 ,给定终止误差 ,令k=0;第2步

42、:求梯度微量模的值: ;若 ,停止计算,输出 ,作为极小点的近似值,否则转下一步;第3步:构造负梯度方向:第4步:从 出发,沿 进行一维搜索,求 ,使令 ,置k:=k+1,转第2步。三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络设D是数据元组 的训练集。训练信念网络意味着必须学习CPT表目的值。设 是具有双亲 的变量的 CPT表目,其中 。 可以看作权重,类似于神经网络中隐藏单元的权重。权重的集合记作W。这些权重初始化为随机概率值。基于 是每个可能设置都是等可能的假定,使用梯度下降策略搜索能最好地对数据建模的 值。这种策略是迭代的。它沿着准则函数的负梯度(即最陡峭下降)搜索解。每次迭代都

43、更新权重,算法向当时看上去是最好解的方向移动而不回溯。最终,它收敛于一个局部最优解。三、贝叶斯网的学习1、参数学习8.3 贝叶斯信念网络对于我们的问题,我们最大化 。这通过按 的梯度来做,使问题更简单。给定网络拓扑和初始化的 ,该算法按以下步骤处理:(1)计算梯度:对每个i,j,k,计算三、贝叶斯网的学习1、参数学习上式右端的概率要对D中的每个训练元组 计算。为简单起见,简单称此概率为p。当 和 表示的变量对某个 是隐藏的时,则对应的概率p可以使用贝叶斯网络推理的标准算法,由元组的观察变量计算。8.3 贝叶斯信念网络(2)沿梯度方向前进一小步:用下式更新权重三、贝叶斯网的学习1、参数学习其中,

44、是表示步长的学习率,而 由第1步计算得出。学习率设置为一个小常数,有助于收敛。 (3)重新规范化权重:由于权重 是概率值,它们必须在0.01.0之间,并且对于所有的i,k, 必须等于1。在第2步权重更新后,可以对它们重新规格化来保证这一条件。8.3 贝叶斯信念网络结构学习是寻找对先验知识和数据拟合的最好的贝叶斯网络结构。对具备大量专家知识的问题领域,贝叶斯网络结构的构建方法由先验知识获得,即根据专家对变量间存在的因果依赖关系的认知,直接勾画出从因变量到果变量间的连接,大多数情况下有专家知识获得的贝叶斯网络结构正是最优的贝叶斯网络结构。结构学习有两种方式:一种是结构选择,即选择一个最好的网络结构

45、;另一种是选择性的网络平均,即选择合适数量的网络,这些网络结构可以代表所有的网络结构。我们主要讨论结构选择。前面的参数学习假设已知变量间的定性关系,通过数据分析提示变量间的定量关系;而结构学习则是要同时揭示变量间的定性和定量关系。结构学习一般分两步讨论,即模型选择和模型优化。模型选择要回答的问题是用什么样的准则来评判不同模型结构之优劣,而模型优化则是要把最优的模型结构找出来。三、贝叶斯网的学习2、结构学习8.3 贝叶斯信念网络(1)模型选择在贝叶斯框架下的CH评分准则。在贝叶斯模型选择框架在,我们视模型结构S和模型参数 为随机变量。变量S的可能取值包括所有以 为节点的有向无环图。由贝叶斯公式可

46、得:三、贝叶斯网的学习2、结构学习结构学习就是选择使后验概率 最大的网络结构。P(S)称为结构先验分布,是关于结构S的先验知识的概括;P(D|S)称为结构似然。 8.3 贝叶斯信念网络(1)模型选择由于P(D)不依赖于S,所以选择后验概率最大的结构就是选择如下函数达到最大的结构:三、贝叶斯网的学习2、结构学习 称为结构S的贝叶斯评分。一般假设式中的结构先验分布P(S)是均匀分布。P(D|S)有这里 是二元组 的似然函数,记为因此,P(D|S)称为边缘似然函数,记为于是确定网络结构的后验分布只需要为每一个可能的结构计算数据的边缘似然。 8.3 贝叶斯信念网络(1)模型选择在无约束多项分布、参数独

47、立、采用Dirichlet先验和数据完整的前提下,数据的边缘似然正好等于每一个(i,j)对的边界似然的乘积,即三、贝叶斯网的学习2、结构学习其中 是D中满足 , 的样本个数, ,对上式两边取对数,得上式右边所给出的量称为结构S的Cooper-Herskovits评分,简称CH评分。如果假设结构先验分布是均匀分布,那么用贝叶斯评分选择模型就等于是用CH评分来选择模型。8.3 贝叶斯信念网络(1)模型选择可以看到,评分只是由Dircichlet分布的超参数 来决定的。在使用CH评分之前,首先需要选定参数先验分布 中超参数 。通常这并非易事,因为理论上我们需要对每一个可能的结构都提供参数先验分布,然

48、而结构数目众多,无法一一罗列。在实际中,人们往往规定一个等价样本量和一个先验贝叶斯网 ,利用下式得到 的超参数 :三、贝叶斯网的学习2、结构学习8.3 贝叶斯信念网络(2)模型优化在选定模型评分函数后,接下来是要找出评分最高的网络结构,这就是模型优化。最直截了当的方法是穷举法,即逐一计算每一个结构的评分,然后选出分数最高的结构。但是,在实际中,因为网络结构数目太多,穷举法往往是不可行的。我们把计算和比较不同模型结构评分的过程称为搜索过程。常用的结构学习方法主要有两类,分别是基于依赖性测试的学习和基于搜索评分的学习。常用的搜索算法是启发式局部搜索算法,这种方法从给定的初始网络结构(可以是空网络结

49、构、随机指定的网络结构、先验网络结构等)开始,通过增加、删除和转向操作使得局部最大化,再逐渐扩展到整个网络。在介绍搜索算法前,首先指出一个CH评分的性质,它能大大降低搜索过程中计算模型评分的运算复杂度。三、贝叶斯网的学习2、结构学习8.3 贝叶斯信念网络(2)模型优化考察模型选择中所给出的CH评分。它可以视为n项之和,每一项对应一个变量。用 表示由变量 、其父节点为 以及它们之间的边所形成的局部结构。在CH评分公式中与 所对应的那一项依赖于局部结构 ,因此记为 即三、贝叶斯网的学习2、结构学习称为 的家庭CH评分。利用家族CH评分,CH评分公式可以改写为:式中右边的 依赖于网络结构S。在上式的

50、意义下,我们称CH评分是可分解的,它分解为各变量的家族CH评分之和。 8.3 贝叶斯信念网络(2)模型优化在搜索最优模型的过程中,每一步都会将当前模型结构S略加修改,得到另一个结构S,然后再计算和比较两者的评分。通常S和S的差别不大,只有一两个变量的父节点发生了变化。如果评分函数是可分解的,那么S与S评分的差别只是那一两个变量的家族评分的变化,从而容易计算。作为一个例子,假设S与S的唯一区别是某变量 的父节点发生了变化,从 变成了 ,同时假设使用的是CH评分,则有三、贝叶斯网的学习2、结构学习若已知 ,则 可以用下式计算: 8.3 贝叶斯信念网络(2)模型优化Cooper和Herskovits

51、在1992提出的K2算法是最早的贝叶斯网络结构学习算法之一。设D是关于变量 的一组i.i.d.完整数据。K2算法的目的是要寻找CH评分高的模型。出于计算复杂度的考虑,K2算法用一个变量排序和一个正整数u来限制搜索空间。它不是要寻找出CH评分最高的模型,而是要寻找在一定条件下的最优模型。它使用下面两个条件使搜索空间大大缩小:(1)S中任一变量的父节点个数不超过u;(2)是S的一个拓扑序。为简化模型评分的计算,K2假设所有参数先验分布都是均匀分布。这意味着CH评分中的超参数 以及 都是1。三、贝叶斯网的学习2、结构学习8.3 贝叶斯信念网络(2)模型优化K2算法的出发点是一个包含所有节点,但却没有边的无边图。在搜索过程中,K2按顺序逐个考察中的变量,确定其父节点,然后添加相应的边。对某一变量 ,假设K2已经找到了它的一些父节点 ,如果 的父节点个数 还未达到u,那么就要继续为它寻找父节点。具体的做法是,首先考虑那些在中排在 之前,但却还不是 父节点的变量,从这些变量

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论