大师兄的贝叶斯网络学习笔记(八):贝叶斯网络(三)
大师兄的贝叶斯网络学习笔记(十):贝叶斯网络(五)
四、贝叶斯网的构造
- 贝叶斯网络的构造方法有两种,一种是通过咨询专家手工构造,另一种是通过数据分析来获得。
1. 确定网络结构
- 选定一组刻画问题的随机变量
;
- 选定一个变量顺序
;
- 从一个空图出发,按照顺序
逐个将比那辆加入到
中;
- 再加入变量
时,
中的变量包括
。
- 利用问题的背景知识,在这些变量中选择一个尽可能小的子集
,使得假设“给定
中的其他变量条件独立”合理。
- 从
中的每一个节点添加一条指向X_i的有向边。
例:
- Pearl教授家住洛杉矶,哪里地震和盗窃时有发生,教授家里装有警铃,地震和盗窃都可能触发警铃。听到警铃后,两个邻居Mary和John可能会打电话给他。一天,Pearl教授接到Mary的电话,说听到他家的警铃声,Pearl教授想知道他家遭盗窃的概率是多大。
- 这个问题包含5个随机变量:盗窃(B)、地震(E)、警铃声(A)、街道John的电话(J)和街道Mary的电话(M);
- 所有不变量的取值均是y或n。这里变量间的关系存在不确定性:
- 盗窃和地震以一定概率随机发生;
- 它们发生后,并不一定会触发警铃;
- 而警铃响后,Mary和John不一定会听到警铃;
- 有时候,两人也会将其他声音误听为警铃声。
- 要计算的是接到Mary的电话后(M=m),Pearl教授对家里遭盗(B=y)的信度,即
- 假定选用序
来为它构造一个贝叶斯网络:
- 首先把M加入控图,得到
![]()
- 接着加入J:假设给定A,M和J条件独立,但是,在还不知道A时,却不能假设M和J相互独立,因为若Pearl教授接到Mary的电话,那么他家的警铃响的可能性增大,从而John会打电话的可能性也会变大,因此M和J相互不独立,从而
,于是有变"M-J",得到
。
- 然后加入A:是否接到Mary和John的电话显然都会影响对精灵是否已响的判断,所以
,于是有边“A->B”,得到
。
- 最后加入E:先考虑它和A的关系,E显然依赖于A,因为知道警铃响会增加对地震发生的信度。对M和J,可以假设给定A,他们与E条件独立。最后考虑B和E的关系。
- 但是,若已知A的取值,却不能假设B和E相互独立。考虑警铃已响的情况。
- 若已知地震发生,则警铃响可能是由地震造成的,从而对发生窃贼的新任度会降低;
- 若已知没有地震发生,则排除了地震触响警铃的可能性,于是对发生盗窃的信任度会增高。
- 综上所属,应该假设
,于是有边“A->E”和“B->E”。
- 最后得到
分别如图:
- 不同的变量顺序导致不同的网络结构,不同的网络结构表示了联合分布的不同分解,而不同的分解则意味着不同的复杂度。应该按照什么原则来原色变量顺序:
- SMith(1989)认为应以模型的复杂度为标准。
- Howard和Matheson(1984)认为变量顺序的选取应以条件概率估计的难易程度为标准。
- Pearl(2000)提出应该用因果关系来决定变量顺序,原因在前,结果在后。


