[人工智能AI]之贝叶斯网络(Bayesian network)
通俗地讲,贝叶斯网络就是用一组有向无环图,表示多个事件的因果依赖关系,并借此完成相关推理计算;
1. 贝叶斯定理(条件概率)
结合全概率公式,可以推演到一下一般形式:
相比数学公式,更关心贝叶斯定理的通俗解释:
一言以蔽之:贝叶斯定理与人类大脑的逻辑机制十分契合
例如:
瞎子看戏,人笑他也笑
瞎子看戏,看不见戏中内容,如果随机大笑必然闹出尴尬;
因此瞎子选择在别人笑的时候跟着笑,这样便提高了自己命中"笑逢其时"的概率;
假设P(A):戏中有恰有精彩的概率; P(A) = 10% ; (即瞎子随机笑,命中概率仅10%);
P(B):有观众发出笑声的概率;P(B) = 30%; (即一部戏有30%的时间有观众发笑捧场,但此时戏未必是精彩的);
P(B|A):戏中精彩且恰有观众发笑的概率;P(B|A) = 90%;(可以理解为:某些段子隐晦精深无人看懂)
P(A|B):观众发笑且此时正戏中精彩的概率;(此即为瞎子“笑逢其时”的概率)
根据贝叶斯定理:
P(A|B) = P(A) * P(B|A) / P(B) = 10% * 90% / 30% ≈ 30%
显然,30%的“笑逢其时“概率远远大于10%的"随机笑对"概率!
下面Venn图展示其中原理:至于贝叶斯公式的推导,对着这Venn图,我想可以很清楚地想明白!
下面附一个例题巩固:
2. 贝叶斯网络(BN)
贝叶斯网络(Bayesian network),又称信念网络(Belief Network);
它是一种模拟人类推理过程中因果关系的不确定性处理模型,其网络拓朴结构是一个有向无环图(DAG)。
基本模型:
- 圈表示随机变量,箭头表示条件依赖关系;
- A–>B表示A直接影响到B,边的权重表示条件概率P(B|A)数值;
下面重点介绍贝叶斯网络的几种模型:
2.1 Head-to-Head(汇合连接)
先利用联合概率推导得:
P(X, Y, Z)
= P(X) * P(Z|X) * P(Y|X, Z) # 因为X,Z相互独立,所以P(Z|X)=P(Z)
= P(X) * P(Z) * P(Y|X, Z)在Y未知的条件下,X、Z被阻断,是相互独立的,称之为head-to-head条件独立
P(X, Y, Z) * P(X, Z) = P(X, Z) * P(Y|X, Z) * P(X) * P(Z)
P(X, Y, Z) * P(X, Z) = P(X, Y, Z) * P(X) * P(Z)
P(X, Z) = P(X) * P(Z)
2.2 Tail-to-Tail(同父连接)
2.3 Head-to-Tail(顺序连接)
3. d-可分
判断贝叶斯网络中任意两节点是否相互独立
d-可分 <–> A,B间所有节点都被堵塞 <–> A,B相互独立独立即阻断,阻断即独立
4. 贝叶斯网络的构建