1. 基本概念
贝叶斯网络(Bayesian network)又称信念网络(belief network),使用**有向无环图(Directed Acyclic Graph)来表示变量间的依赖关系,并使用条件概率表(CPT,Conditional Probability Table)**描述属性的联合概率分布。
贝叶斯网络表示为 N = ( G , Θ ) N=(G,\Theta) N=(G,Θ)
- G = ( V , E ) G=(V,E) G=(V,E)表示结点关系的有向无环图,即贝叶斯网络结构。
- Θ = { θ 1 , θ 1 , . . . θ n } \Theta = \{\theta_1,\theta_1,...\theta_n\} Θ={θ1,θ1,...θn}表示每个结点 V i V_i Vi在它父结点集 p a ( X i ) pa(X_i) pa(Xi)条件下的条件概率,即贝叶斯网络参数。
两个重要条件独立性:
- 结点与其非后代结点条件独立
- 给定一个结点的马尔可夫覆盖,这个结点和网络所有其他结点条件独立
特点:
- 一种不定性因果关联模型
- 具有强大的不确定性问题处理能力
- 具有良好的可理解性和逻辑性
- 结合先验知识,用图形化模型描述数据间的相互关系便于分析预测
- 能有效进行多元信息融合与表达
e.g
- Difficulty (课程的难度): 取值0(低难度)和1(高难度)
- Intelligence(智力水平): 取值0(低)和1(高)
- Grade(学生的上课成绩) : 取值1(好成绩),2(平均成绩)和3(成绩差)
- SAT (SAT考试成绩): 取0(低分)和1(高分)
- Letter(完成课程后学生从教授那里得到推荐信的质量) : 取0(不是好信)和1(好信)
图中的边包含变量的依赖关系(箭头的方向表示因果关系)
- Grade 取决于课程的Difficulty和学生的Intelligence
- Grade 决定了学生是否从教授那里得到了一封好的Letter
- 除影响Grade外,学生的Intelligence还影响他们的SAT分数
如Grade
有两个父节点,条件概率
p
(
G
r
a
d
e
=
g
∣
D
i
f
f
i
c
u
l
t
y
=
d
,
S
A
T
=
s
)
p(Grade=g | Difficulty=d, SAT=s)
p(Grade=g∣Difficulty=d,SAT=s)表示在Difficulty=g
和SAT=s
的条件下,Grade=g
的概率是多少。
2. 有向分离
有向分离对应概率论中的条件独立性,目的在于从图的角度寻找结点之间的条件独立性。
三类特殊的结点连接,分别为顺序连接、发散连接、收敛连接。
其中结点c分别称为头对尾结点(head-to-tail)、尾对尾结点(tail-to-tail)和头对头结点(head-to-head)。
根据条件独立知识:在顺序连接和发散连接中,
当 前 结 点 c 的 状 态 { 未 知 情 况 下 , a 和 b 之 间 存 在 相 关 性 已 知 情 况 下 , a 和 b 之 间 关 于 c 条 件 独 立 ( 即 a 和 b 被 c 有 向 分 离 ) 当前结点c的状态\begin{cases} 未知情况下,a和b之间存在相关性 & \\ 已知情况下,a和b之间关于c条件独立(即a和b被c有向分离) & \end{cases} 当前结点c的状态{未知情况下,a和b之间存在相关性已知情况下,a和b之间关于c条件独立(即a和b被c有向分离)
对于贝叶斯网络 N = ( G , Θ ) N=(G,\Theta) N=(G,Θ), X i X_i Xi和 X j X_j Xj是 G G G中任意不相邻的两个结点, Z Z Z表示连接 X i X_i Xi和 X j X_j Xj路径上的结点集,并且不不包含 X i X_i Xi和 X j X_j Xj, l l l是连接 X i X_i Xi和 X j X_j Xj的任意路径。如果 Z Z Z满足以下条件之一,则称** l l l是关于 Z Z Z的一条阻断路径**, X i X_i Xi和 X j X_j Xj被 Z Z Z有向分离,记作 d e s p G ( X i , Z , X j ) desp_G(X_i, Z ,X_j) despG(Xi,Z,Xj)。
- Z Z Z包含 l l l中不同于 X i X_i Xi和 X j X_j Xj的某一头对尾结点。
- Z Z Z包含 l l l中不同于 X i X_i Xi和 X j X_j Xj的某一尾对尾结点。
- Z Z Z不包含 l l l中不同于 X i X_i Xi和 X j X_j Xj的某一头对头结点及其子孙结点。
结点集之间的有向分离
假设
A
,
B
,
Z
A,B,Z
A,B,Z是在
G
G
G中的三个互补相交的结点集,对于任意的结点
A
i
∈
A
A_i \in A
Ai∈A和任意
B
i
∈
B
B_i \in B
Bi∈B,若
A
i
A_i
Ai和
B
i
B_i
Bi被
Z
Z
Z有向分离,则称
A
A
A和
B
B
B被
Z
Z
Z有向分离,记作
d
e
s
p
G
(
A
,
Z
,
B
)
desp_G(A,Z,B)
despG(A,Z,B)
定理:判定
G
G
G中结点集
X
X
X和
Y
Y
Y是否被
Z
Z
Z有向分离 等价于
X
X
X和
Y
Y
Y是否在新的有向无环图
G
′
G'
G′无连接路径。
通过定理,可以将有向图简化为非连接图,这样在线性时间内判断是否满足有向分离,从而降低分析的复杂度。
对于贝叶斯网络 N = ( G , Θ ) N=(G,\Theta) N=(G,Θ)
- 若 X X X和 Y Y Y被 Z Z Z有向分离,则对于任意网络参数 Θ \Theta Θ, X X X和 Y Y Y关于 Z Z Z条件独立
- 若 X X X和 Y Y Y不被 Z Z Z有向分离,则 X X X和 Y Y Y关于 Z Z Z条件独立取决于网络参数 Θ \Theta Θ
3. 贝叶斯网络结构学习
从给定的数据集中学习出贝叶斯网络结构,即各结点之间的依赖关系,只有确定了结构才能学习网络参数,即表示各结点之间依赖性的条件概率。
根据训练数据是否存在缺失,网络结构学习分为
- 完整数据结构学习
-
基于搜索评分的方法:贝叶斯网络结构学习问题看成是优化问题,通过给定结构的评分函数(基于贝叶斯评分/基于信息论评分),利用搜索算法(K2/爬山/GES/基于进化计算),寻找评分最优的网络结构。
-
基于约束的方法:通过统计独立性测试来学习结点间的独立性和相关性,并根据独立性或相关性构建出相应的有向无环图结构。
-
基于信息论的评分函数:将学习问题看做一个数据压缩任务,使用最小描述长度(MDL,Minimum Description Length)为优化目标。编码长度包括了描述模型自身所需的字节长度和使用该模型描述数据所需的字节长度。
- 缺失数据结构学习
- 修复数据集的方法
- 近似计算的方法
4. 贝叶斯网络参数学习
贝叶斯网络参数学习(参数估计):在给定网络结构的基础上,从训练数据中学习得到结点的条件概率分布的过程。
贝叶斯网络主要是处理离散数据,因此在参数学习的过程中,通常假设网络中变量的状态是离散的或者呈现高斯分布。实际应用中,结点变量一般是不满足高斯分布的,通常可以采用等频率或者等区间的离散型方法对训练数据进行离散化。
训练数据中所有变量都可观测:
- 贝叶斯估计(BE,Bayesian Estimation)
- 最大似然估计(MLE,Maximum Likelihood Estimation):实例数据完备的情况下的学习方法,依据参数与数据集的似然程度来选择参数。
某些结点变量的状态未必能观测
- 近似方法:Monte-Carlo方法/高斯毕竟/Laplace近似/EM算法求极大似然/MAP