Computer Engineering and Applications计算机工程与应用 动态贝叶斯网络结构学习的依赖分析方法研究 冷翠平 ,王双成 ,王辉 LENG Cuiping’,WANG Shuangcheng ~,WANG Hui 1.上海立信会计学院数学与信息学院,上海20 1 620 2.上海立信会计学院开放经济与贸易研究中心,上海201620 3冲央民族大学信息工程学院,北京100081 1.School of Mathematics&Information,Shanghai Lixin University of Commerce,Shanghai 201620,China 2.Opening Economy&Trade Research Center,Shanghai Lixin University of Commerce,Shanghai 20 1 620,China 3.School of Information Engineering,The Central University for Nationalities,Beijing 1 0008 l,China E-mail:lengcuiping@lixin.edu.cn LENG Cuiping,WANG Shuangcheng,WANG Hui.Study on dependency analysis method for learning dynamic Bayesian network structure.Computer Engineering and Applications.2011.47(3):51—53. Abstract:At present.the methods of learning Dynamic Bayesian Network(DBN)structure have low eficifency and reliability. Learning dynamic Bayesian network structure iS done based on the basic dependency relationship between variables and depen- dency analysis method.A sketch of dependency relationship between variables is built.Then the redundant edges can be got rid of by the conditional independent test.And the edges are oriented through the collision identify and the rel ̄ive conditional predic- tion capability.Therefore,the dynamic Bayesian network stucture can be estrablished.This method has high eficifency and reliability. Key words:Dynamic Bayesian Network(DBN);dependency analysis;prior network;transition network;structure learning 摘要:针对现有动态贝叶斯网络结构学习方法具有低效率和低可靠性等问题,基于变量之间的基本依赖关系和依赖分析方法 进行动态贝叶斯网络结构学习。建立变量之间依赖关系草图,通过条件行检验去除多余的边,使用碰撞识别和条件相对预 测能力确定边的方向,便可得到构成动态贝叶斯网络结构的先验网和转换网。该方法在效率和可靠性方面均具有优势。 关键词:动态贝叶斯网络;依赖分析;先验网;转换网;结构学习 DOI:10.3778 ̄.issn.1002—8331.2011.03.015 文章编号:1002—8331(2011)03—0051—03 文献标识码:A 中图分类号:TP391 1 引言 动态贝叶斯网络” (DBN)是标准贝叶斯网络的扩展,将时 间因果关系和变量因果联系有机结合在一起,可用于多变量 随机过程的模拟和动态因果分析。DBN同标准贝叶斯网络一 样也由结构和参数两部分构成,根据结构和数据集可估计出 参数,因此结构学习同样是DBN学习的核心。在平稳性和马 尔科夫性假设下,DBN结构学习转化为先验网(prior net. 构学习。在实际问题中一般不具有结点顺序的先验知识,现 有的结点排序算法具有与结构学习接近的复杂度,而且不能 保证是因果顺序。 针对上述问题,基于变量之间基本依赖关系和依赖分析 方法进行动态贝叶斯网络结构学习。首先构造用于结构学习 的数据集,并在此基础上,通过变量之间互信息计算建立依赖 关系草图;然后通过条件性检验去除多余的边;最后使用 碰撞识别和条件相对预测能力确定边的方向,实现基于依赖 分析的动态贝叶斯网络结构学习。 用 O], 1],…,x[r】表示随机向量序列,sit]={ [ , …work)和转换网(transition network)学习问题 ]。目前建立 DBN结构主要依靠专家知识和打分.搜索方法 。第一种方 法,当变量较多时不易实现,而且由不同专家主观知识得到的 DBN结构往往具有一定的差异,不便于交流、比较和分析;第 二种方法具有较好的理论基础,但打分函数的计算复杂程度 , },x[t]={X1 X2 …,Xn[『]} 其值,D D …, D[t】表示具有Ⅳ【0】,Ⅳ【1 .,N[t】个例子的时间片数据集,在概 和结构搜索空间的大小都随变量增加指数增长,因此一般要 求结点具有顺序,并采用贪婪(greedy)或随机搜索方法进行结 率模式中的变量和表示概率模式的图形模式中的结点有时不 加区分 基金项目:国家自然科学基金(the National Natural Science Foundation of China under Grant No.60675036);上海市市本级财政部门预算项目 (No.1138IA0005);上海高校选拔培养优秀青年教师科研专项基金(No.six一07010);上海市教委重点学科“国际贸易”(第五期)。 作者简介:冷翠平(1979一),女,博士,讲师,研究领域为智能控制与数据采掘;王双成(1958一),男,博士,教授,研究领域为人工智能,机器学习, 数据采掘及其应用。 收稿日期:2009.05.25修回日期:2009.07.26 Computer Engineering andApplications计算机工程与应用 2动态贝叶斯网络分析 一量条件性检验,分别用,( , )和,( , , .,,…, ) 般动态贝叶斯网络研究非常复杂,为简化问题,给出马 表示变量 和 之间的互信息和以 , ,,…, (“ ≠f,J, 尔科夫和平稳性两个假设。马尔科夫假设使得 【,+1]/x[o], [1】_…, 嵋): [H 1]Ix[t]),而平稳性假设将对所有的t,转 移概率 [f+1]xI[t])都相同。这样可以得到联合概率的如下 分解形式: 七=1,2,…,h)为条件的条件互信息,对给定的小正数s(一般 取8=0.O1),如果I(Xi, IX..,…,, , )<s,就认为 和 .之间条件。用D【f一1,t】表示由向量(xl“It一1】, ’It一1】,…, x I ’It一1],x “It], 【,】,.一, ’【f】), f≥1,1<k<min{N[t一1】,Ⅳ[f】) p( 【0】, 【1】,…, [ 】)= x【o])I I p( [f+1] [f】) ,=l 构成的数据集,其中x【^1It~1】,x p—1],…,x It一1】和 [f], 用于分解计算 【0])和p(xIt+1】 [f])的贝叶斯网络分别称为 x ’【f],…, f]分别是数据集D[,一1]和D 中的第k个记录。 先验网(用G 表示)和转换网(用G 表示),即 p(x[O])--pao 【o])=lj:l Ip( x o] l【0]) p( [f+1】 p])=p。一( 【,+l】 【 ])=r1p(x 】1 【『J,zrj[t一1】) 其中,7/*i[o]是先验网中 [o]父结点集n 【o]的配置,7ri[t】和  ̄ri[t—l】分别是 在转换网络中属于{ ,X2[t],…,xo[t]}的 父结点集Ⅱ ∽和属于{X ̄[t-l】,X2[t一1】,…, p一1】}的父结点 集H It—l】的配置。图1是Friedman[”给出的一个简单动态贝 叶斯网络结构的构成和展开形式。 (a)先验网 (b)转换网 (c)展开后的动态贝叶斯网络结构 图1动态贝叶斯网络结构图 3动态贝叶斯网络结构学习 在平稳性和马尔科夫性假设下,动态贝叶斯网络结构学 习可转化为先验网和转换网的学习问题,而且两个网络可独 立地进行学习。先验网学习可采用基于依赖分析的贝叶斯网 络学习方法,下面主要研究如何进行转换网学习。 利用贝叶斯网络的信息管道模型[6-7]描述变量之间存在的 三种基本依赖关系(边):(1)传递依赖(transitive dependencies), 结点之间存在直接的信息流动,而且信息流不能被其他结点 所阻塞,结点所表示的变量之间边缘和条件依赖;(2)非传递 依赖(non.transitive dependencies),结点之间不存在直接的信 息流动,而是由连接两结点之间的开路嗍(不含碰撞结点的路 径称为开路,否则称为闭路,没有方向的通路称为路径或链 路)产生信息流,这种信息流被切割集 l中的结点所阻塞,两个 结点所表示的变量之间边缘依赖,但条件;(3)导出依赖 (induced dependencies),这种依赖是由V结构 所导致,结点 之间不存在直接的信息流动,而是由 结构中的碰撞结点诱发 的信息流,结点所表示的变量之间边缘,但条件依赖。结 点之间具有上述三种依赖关系的边分别称为第一、第二和第 三种边。 在转换网中存在两类边,一类是 p一1J和 们之间的边, 称为时序边;另一类是Xj[t]和Xj[t】之间的边,称为非时序边。 建立转换网就是基于数据集D[t一1,t1确定时序和非时序边并 为其定向的过程。使用互信息和条件互信息进行变量之间定 3.1增加第一种边 用G一表示转换网,并初始化为只有结点没有边的平凡 图。依次进行互信息,( 【卜1】, [t]lD[t一1,r】)( l,2,…, , J=1,2,…, )和,( [f】, D『f一1,,])( 1,2,…,n,J=1,2, …,n, )计算,如果I(Xi[t一1】,Xi[t]Dtt—l, 】)>e,在G 中增 加边时序边 卜1卜 [f],如果,( [f]. [t]lD[t一1,f】)>s,在 G 中增加边非时序边L[t卜Lit],这一过程需要n(3n—1),2 次互信息计算。 3.2去除第二种边 由于在增加第一种边的同时会增加一些第二种边,下面 分别给出去除第二种时序边和非时序边的方法。 对于jE日寸序边,在G.+中,用Sx[d( [f】, [f])和Sx, ̄[tl( [f】, [f]) 分别表示 和Xj[t】的邻域中在xJt】和 ,】链路(两个结点之 间的无向通路)上的结点集, ( p】, )表示 l『f】 , [,】) 和 l,(l 【『], f】)中具有较少结点的结点集。对存在边的结 点对 Xj[t],设S(X/[t], [f])={ “’” [ ,…, 一[f]}, 如果存在jo(1 0 v)使,( ’[f],D[t-1,f】)<s,在 G.+中删除边 小一 [fJ;否则,选取 ’”[f】:arg arin{,( 【f】, 】 “ [f】,D[f一1,f])),1≤ ’≤v ”lfl v ’ 如果存在jo(1 。 v,j。 )使 ,( 【 , 【,1J 【『], ’【f】,D[t一1,f])<8 在G 中删除边xJt卜 『];重新确定 ( 【 , [f]),由于产生 第二种依赖的信息流往往能被少数结点所阻塞(多数情况是 一个或两个结点),因此,大部分的第二种边已被清除。 ( [f】, f])将具有很少的冗余结点,如果 ,( It]IS(X,[,】, 嘲),D[t一1, )<s 在G 中删除边 [f]一Xj[t】。这一过程最多需要2n 次条件互 信息计算。 ’[对于时序边,用Sx )表示 ,]的时间l[t](Xi[t一1】, [f])={ “ ’ hj)[r】,…, t 片邻域中在 f~]和1 Xflt】 路上 链的结点集,使用和去除第二种时序边类似的方法可检验边 [f一1】一Xj[t]的存在性。 3.3确定边的方向 确定边的方向分为两个阶段,第一阶段使用高效率的碰撞 识别为部分边定向,然后再基于条件预测能力为其他边定向。 3.3.1基于碰撞识别的定向 在G.+中可能存在三种 结构,分别是 [小 冷翠平,王双成,王[f】,Xi[t一1】 [ 和 f一1】 [r】 辉:动态贝叶斯网络结构学习的依赖分析方法研究 一1】,前两 种情况可用于定向。对选择的结点对L[t一1]和 ,J,设它们 之间不存在边,在G 中与 [,一1]和 f】可能形成V结构的 结点为 [f](根据转换网的含义,不存在t一1 , ,It],…, 【,.时间片的结点),对每一个可能的 结构进行碰撞识别(具体识 别方法参看文献【7】),如果 『f一1】和Xj[t]与 构,便定向为 [,] .[小陶成 结 (a)先验网 [f】(由转换网的构成, f一1]和 M .之间边的方向为 【卜1] [f])。对结点对 f]和 [ 可 做类似处理。这一过程最多需要-(-一1) 一2)次条件互信息 计算。 3.3.2基于预测能力的定向 对任意的两个变量 和 [『],在排除其他变量影响的 情况下(以不包括两个变量本身的两个变量的马尔科夫毯中 变量为条件,变量集可排除其他变量的影响),如果L[t】对 Xj[t]比 f】对Xi[t]更具有条件预测能力,因果方向应该由 【f]指向Xi[t]。 记F( …, [嵋 ㈤为变量 【 , …, ,.[t】对 [ 的预测能力, F(Xm.[ , [ 一, [ [fJ) :,[『】, ,[f]_…, [r])’ 1 j ’ 【『_ m ax, 『f1){ ,[ m: 一, [f])) 其中,1 m^≤ ,1 v,m^≠i,称其为以 [f】, [ …, .[『]为条件, [,】对 M的条件预测能力 ( . m…, [f】, f])= F( .It], …, 【fJ ,】), F( .[f】, ,[f ‘, [嵋 [ ) ..为xj[t]对 的条件相对预测能力,其中 ≠f√≠m^,h=1, 2,…,v。 用 ( 【f】)表示 [ 的父结点、子结点、子结点的父结点、 以及与 r]通过无向边直接连接的结点(不包括 )集,在 V结构可识别假设下,可以证明 ( It])U M是L[t】的马尔 科夫毯 ・ 。当B( [f])U ( [f】)中变量给定时,除 『]和 之间的依赖外,能够排除其他变量的影响。 如果 ( ( [f])U ( ), )> ( 【r])U ( ), XjEt】 ),而且 小 xj[t]不产生环路,就定向为 [f] Xflt】,否则定向为 +_Xj[t]。 综E昕述,基于依赖分析建立转换网的时间复杂度是O(n )。 4实验 根据宏观经济研究需求,选择指标(变量)中国工业增加 值( )、世界工业增加值( )、中国消费价格( )、世界消费 价格( )、中国生产价格( )、当月出口( )、当月进El( )、 名义有效汇率( ),并从中国统计年鉴中获取这些变量的时 间序列数据,通过建立动态贝叶斯网络结构来发现它们之间 的静态和动态因果联系。使用前面给出的方法所建立的初始 网和转换网结构,如图2所示。 (b)转换网 图2学习得到的先验网和转换网图 通过与领域专家的交流,前面学习得到的静态初始网和 动态转换网即反映了经验中的因果联系,同时还展示了许多 专家经验中所没有,而却在数据中蕴含的因果关系,切实起到 了客观因果知识对主观因果经验的修正和补充的作用,有助 于提高宏观经济分析与决策科学化水平。 5结语 建立了一种有效实用的从数据中发现动态贝叶斯网络结 构的方法。该方法通过互信息和条件互信息计算来识别变量 之间的依赖和条件性,并借助碰撞识别和条件相对预测 能力确定无向边的方向,从而得到初始网和转换网,不需要结 点顺序的先验知识,算法具有多项式级复杂度。 参考文献: [1】Friedman N,Murphy K,Russell S.Learning the structure of dy— namic probabilistic networks[C]//Proceedings of the 14th Intema— tional Conference on Uncertainty in Artiifcial Intelligence,Madi— son,1998:139—147. [2]Pe ̄aa J M,Bjorkegrenb J,Tegn6r J.Learning dynamic Bayesian network models via cross—validation[J].Pattem Recognition Let— ters,2005,26(14):2295—2308. 【3】Gao S,Xiao Q K,Pan Q,et a1.Learning dynamic Bayesian net— works structure based on Bayesian optimization algorithm[J].Lec— ture Notes in Computer Science,2007,4492:424-43 1. [4]吴志勇,蔡莲红.基于动态贝叶斯网络的音视频双模态说话人识 别[J】.计算机研究与发展,2006,43(3):470.475. [5欧阳赞,5]马建文,戴芹.利用动态贝叶斯网络进行多时相遥感变化 检测[J】.电子与信息学报,2007,29(3):549—552. 【6】王双成,苑森淼.具有丢失数据的可分解马尔科夫网络结构学习[J】. 计算机学报,2004,27(9):1221.1228. [7】王双成,苑森淼.具有丢失数据的贝叶斯网络结构学习研究[J].软 件学报,2004,15(7):1030—1041. [8]Cheng J,Greiner R,Kelly J.Learning Bayesian networks from data:An efifcient approach based on information—theory[J].Artiif— cial Intelligence,2002,137(1/2):43-90. [9]Chickering D M.Learning equivalence classes of Bayesina net— work sturctures[J].Machine Learning。2002,2(3):445・498.