贝叶斯网络推理的前提是构建贝叶斯网络,面向特定的应用领域构建贝叶斯网络需要完成三个关键性的步骤(D.M.Chickering,2002):
(1)寻找领域内的各种变量以及它们的可能取值;
(2)标识变量之间的相互依赖关系,并以图形化的形式表示出来;
(3)学习变量之前的概率分布参数,获取每个变量的条件概率分布表。
第一步通常是在领域专家的指导下选取合适的变量,而后两步则是目前贝叶斯网络研究较多的两个内容:贝叶斯网络的结构学习和参数学习。这三个步骤之间是顺序进行的,然而考虑到:
(1)要保证足够的精度,就需要构建一个足够丰富的网络模型;
(2)构建、维护以及推理使用的复杂性,贝叶斯网络的构造过程通常需要反复优化不断丰富,从而提高它的功能性和高效性。
一般情况下,根据贝叶斯网络结构学习、参数学习过程中专家知识的参与程度,贝叶斯网络的构造可以分为三种不同的方式:
(1)由领域专家确定贝叶斯网络的变量节点,结合领域专家知识确定贝叶斯网络的结构,并且指定它的分布参数。这种方式构造的贝叶斯网络完全基于领域专家的知识指导下进行,伴随着贝叶斯网络不断学习、不断成长的过程,会造成很大的工作量,而且相同领域不同专家构建的贝叶斯网络也会存在着比较大的偏差。
(2)由领域专家确定贝叶斯网络的变量节点,结合领域专家知识确定贝叶斯网络的结构,但是由计算机通过大量的训练数据学习的贝叶斯网络的参数。这种方式是一种折中的构建方式,一方面在领域专家的指导下构建了贝叶斯的网络结构,从大的方向上保证了贝叶斯网络的正确性;另一方面结合实际的数据训练进行参数的学习,兼顾了构建过程与实际数据的贴合性,这是目前运用较多的构建方式。
(3)由领域专家确定贝叶斯网络的变量节点,通过机器学习的方式学习大量的训练数据,获取贝叶斯网络的结构和参数。这是一种完全的数据驱动的方式,有着很强的智能性,只需要获取大量的训练数据,就可以完成对贝叶斯网络构建的大部分任务。但是任意贝叶斯网络的结构学习和参数学习本身已经被证明是一个NP难题,因此,这种方式在目前的技术条件和理论水平下不具有很好的学习效率和应用前景。
综上所述,贝叶斯网络的结构学习和参数学习是构建贝叶斯网络的主要任务,然而,这两个任务之间并不是完全独立的:节点的条件概率很大程度上依赖于网络的结构;而网络的结构又是直接由联合概率分布函数所决定的。将两者人为地分割开来是因为,如果贝叶斯网络结构本身比较复杂,学习参数很多,需要的数据量会呈几何级数增长,大大增加了数据存储空间以及计算过程消耗的计算资源,出现理论上可行但技术上不可行的尴尬局面。
除了一些前提和假设条件以外,贝叶斯网络的三个独立因果影响关系也可以有效避免构建过程中的复杂性计算:(www.xing528.com)
(1)条件独立:每个网络节点在已知父节点的条件下独立于所有其他非子节点;
(2)上下文独立:某些变量取特定值的情况下,其余变量之间相互独立;
(3)因果影响独立:贝叶斯网络的边是有向边,它表示这样一种因果关系,即父节点对子节点有直接影响,而多个父节点对子节点的影响是因果独立的。
这三种独立关系大大简化了知识获取和建模的过程,降低了贝叶斯网络构建以及推理过程中的计算复杂性。
本书的重点在于贝叶斯网络的推理算法,而在贝叶斯网络构建方式上采取对第一种方式稍作优化,即综合多个领域专家意见分别确定贝叶斯网络的变量、结构以及依赖关系。
考虑到空间上下文的特点,在构建过程中需满足以下前提(见图4-2):
图4-2 空间上下文贝叶斯网络构建前提示意图
前提1:空间上下文之间具有很明显的层次性,因此组成贝叶斯网络结构的节点也按由低到高的顺序分层排列,层次越低的上下文节点越靠下,层次越高的上下文节点越靠上。
前提2:空间上下文直接获取的是低层上下文,高层上下文需要由低层上下文推理获得,两者之间存在有向性。因此有向链接均是由低层上下文节点向高层上下文节点,反向的边不存在。
前提3:空间上下文之间相邻的层次影响最直接,相关程度也越高;上下文的层距越大,相隔越远,低层上下文对高层上下文的影响越小,相关程度越低。因此设定层距参数D,当相差的层数越过D时,忽略两个空间上下文之间的推理关系。
前提4:相同层的上下文节点之间可以存在有向边。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。