贝叶斯网络结构学习及其应用研究_黄解军
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
收稿日期:2004-01-23。
项目来源:国家自然科学基金资助项目(60175022)。
第29卷第4期2004年4月武汉大学学报#信息科学版
Geomatics and Information Science of Wuhan U niversity V ol.29No.4Apr.2004
文章编号:1671-8860(2004)04-0315-04文献标识码:A
贝叶斯网络结构学习及其应用研究
黄解军1
万幼川1
潘和平
1
(1 武汉大学遥感信息工程学院,武汉市珞喻路129号,430079)
摘 要:阐述了贝叶斯网络结构学习的内容与方法,提出一种基于条件独立性(CI)测试的启发式算法。从完全潜在图出发,融入专家知识和先验常识,有效地减少网络结构的搜索空间,通过变量之间的CI 测试,将全连接无向图修剪成最优的潜在图,近似于有向无环图的无向版。通过汽车故障诊断实例,验证了该算法的可行性与有效性。
关键词:贝叶斯网络;结构学习;条件独立性;概率推理;图论中图法分类号:T P18;T P311
贝叶斯网络学习是贝叶斯网络的重要研究内容,也是贝叶斯网络构建中的关键环节,大体分为结构学习和参数学习两个部分。由于网络结构的空间分布随着变量的数目和每个变量的状态数量呈指数级增长,因此,结构学习是一个NP 难题。为了克服在构建网络结构中计算和搜索的复杂性,许多学者进行了大量的探索性工作[1~5]。至今虽然出现了许多成熟的学习算法,但由于网络结构空间的不连续性、结构搜索和参数学习的复杂性、数据的不完备性等特点,每种算法都存在一定的局限性。本文提出了一种新算法,不仅可以有效地减少网络结构的搜索空间,提高结构学习的效率,而且可避免收敛到次优网络模型的问题。
1 贝叶斯网络结构学习的基本理论
1.1 贝叶斯网络结构学习的内容
贝叶斯网络又称为信念网络、概率网络或因果网络[6]
。它主要由两部分构成:¹有向无环图(directed acyclic graph,DAG),即网络结构,包括节点集和节点之间的有向边,每个节点代表一个变量,有向边代表变量之间的依赖关系;º反映变量之间关联性的局部概率分布集,即概率参数,通常称为条件概率表(conditional probability table,CPT),概率值表示变量之间的关联强度或置信度。贝叶斯网络结构是对变量之间的关系描
述,在具体问题领域,内部的变量关系形成相对稳定的结构和状态。这种结构的固有属性确保了结构学习的可行性,也为结构学习提供了基本思路。贝叶斯网络结构学习是一个网络优化的过程,其目标是寻找一种最简约的网络结构来表达数据集中变量之间的关系。对于一个给定问题,学习贝叶斯网络结构首先要定义变量及其构成,确定变量所有可能存在的状态或权植。同时,要考虑先验知识的融合、评估函数的选择和不完备数据的影响等因素。
1.2 贝叶斯网络结构学习的方法
近10年来,贝叶斯网络的学习理论和应用取得了较大的进展。目前,贝叶斯网络结构学习的方法通常分为两大类:¹基于搜索与评分的方法,运用评分函数对网络模型进行评价。通常是给定一个初始结构(或空结构),逐步增加或删减连接边,改进网络模型,从而搜索和选择出一个与样本数据拟合得最好的结构。根据不同的评分准则,学习算法可分为基于贝叶斯方法的算法[3,7]、基于最大熵的算法[8]和基于最小描述长度的算法[1,2]。º基于依赖关系分析的方法,节点之间依赖关系的判断通过条件独立性(CI )测试来实现,文献[9,10]描述的算法属于该类算法。前者在DAG 复杂的情况下,学习效率更高,但不能得到一个最优的模型;后者在数据集的概率分布与DAG 同构的条件下,通常获得近似最优的模型[11],
但运用该方法要求样本数据集具有一定的规模。
2贝叶斯网络结构学习的启发式算法
2.1算法的原理
贝叶斯网络结构学习是通过对给定数据集的学习和训练,寻找一种最佳的网络来表达变量之间的依赖关系,即确定变量之间的因果连接集合。本文提出一种贝叶斯网络结构学习的启发式算法,其基本思路是基于给定数据集,通过CI测试,有效地修剪完全潜在图,得到一个最优的无向结构或最小潜在图。在给定其他变量子集的情况下,任何两个变量X和Y之间的条件独立性可以通过概率表中的边缘概率和条件概率来判断,而概率表由给定的数据集直接计算得出。
定义1如果给定某一问题领域的各个变量,用一个节点表示其中的一个变量,由任意两个节点之间的无向边连接构成的图模型,称为完全潜在图(potential graph,PG)。
定义2如果变量X、Y和变量集Z之间存在以下关系:P(X|Z)=P(X|Y,Z),即在变量集Z已知的条件下,变量Y的状态和概率不会造成对变量X的影响,称为在给定变量集Z的前提下,X条件独立于Y,记为I(X L Y|Z)。
定义3设X、Y和Z为有向无环图中3个互不相交的节点子集,如果从X中一个节点到Y中一个节点的所有路径之间,存在节点W满足下列条件之一:¹W具有收敛箭头,且W或任何W的子节点不包含在Z中;ºW没有收敛箭头,而且W存在于节点集Z中。则称在给定条件集Z的情况下, X与Y为d-分割,记为
定理1对网络结构中的节点集X、Y和Z,当且仅当P(X|Y,Z)=P(X|Z)时,
定理2[11]在依赖模型M中,设X、Y和Z 为互不相交的子集,条件独立性(X L Y|Z)满足对称性、分解律和交换律等属性。
定理3[11]满足对称性、分布律和交换律的依赖模型M,从完整图中删除任意条件独立性成立的连接(X,Y),则产生一个惟一的最小I-map。
根据信息论,两个离散随机变量(对应于节点)的X和Y具有联合概率函数p(X,Y)和边缘概率函数p(X)、p(Y),其平均互信息I(X,Y)定义为:
I(X,Y)=E X,Y p(X,Y)lg p(X,Y)
p(X)p(Y)(1)
同样,条件互信息I(X,Y|Z)定义为:
I(X,Y|Z)=E X,Y,Z p(X,Y,Z)#
lg p(X,Y|Z)
p(X|Z)p(Y|Z)
(2)
先假设所有的节点之间存在连接,节点X和Y 之间连接的潜在性运用条件互信息来计算。在通常
情况下,设定一个较小正实数的阈值E,当
I(X,Y|Z)[E时,称X与Y被条件集Z进行d-
分割,即在给定Z的条件下,X条件独立于Y,从而
删除X与Y之间的连接。经过n(n-1)/2次CI
测试,最后由完全潜在图修剪成稀疏的理想潜在图。
2.2算法实现
1)初始化完全潜在图。
根据给定的具体问题和数据实例,建立全连接图,即假设任意两个变量之间都存在依赖关系,
用连接边表示变量之间的关联性,则可构成完全
潜在图。数学模型表示为:
PG=(V,L,5)(3)式中,
V={V1,V2,,,V n}(4)
L={(V i-V j)|V i,V j I V}(5)
5={<(V i,V j),P(V i,V j)I L}(6)连接边L的数量为:
|L|=n(n-1)/2(7)设A X表示变量X的直接邻近集,|A X|表示与变量X相邻的变量数,初始化有:
A X=V\{X}(8)
因此,|A X|=n-1,其中n=|V|。
2)融合先验知识。
对于网络中任意两个变量X和Y,根据专家知识或先验常识,设定:
(1)L0={(X,Y)},表示变量对(X,Y)之
间存在无向连接的集合;
(2)L1={(X,Y)},表示变量对(X,Y)之
间不存在无向连接的集合;
(3)T p表示初始贝叶斯网络中任意变量的
最大父节点数,可以通过专家知识或先验常识设
定一个整数T p 识,则设T p=n-1。 3)潜在图修剪。 输入完全潜在图,通过CI测试,若CI测试为真值,用符号(X L Y|Z)表示,变量集Z的节点 数用t p表示。设C(X,Y)表示变量X和Y的最 小d-分割集,其算法如下。 begin 316武汉大学学报#信息科学版2004年