2009-8-20 史忠植 高级人工智能 1
高级人工智能第四章 贝叶斯网络史忠植中国科学院计算技术所
4.1概述
4.2贝叶斯概率基础
4.3贝叶斯学习理论
4.4简单贝叶斯学习模型
4.5贝叶斯网络的建造
4.6贝叶斯潜在语义模型内容提要
2009-8-20 史忠植 高级人工智能 3
贝叶斯网络是什么
贝叶斯网络是用来表示变量间连接概率的图形模式,它提供了一种自然的表示因果信息的方法,用来发现数据间的潜在关系。
在这个网络中,用节点表示变量,有向边表示变量间的依赖关系。
贝叶斯方法正在以其独特的不确定性知识表达形式、丰富的概率表达能力、综合先验知识的增量学习特性等成为当前数据挖掘众多方法中最为引人注目的焦点之一。
2009-8-20 史忠植 高级人工智能 4
贝叶斯网络是什么
贝叶斯 ( Reverend Thomas Bayes 1702-1761)
学派奠基性的工作是贝叶斯的论文,关于几率性问题求解的评论,。 或许是他自己感觉到它的学说还有不完善的地方,这一论文在他生前并没有发表,而是在他死后,由他的朋友发表的 。 著名的数学家拉普拉斯 ( Laplace P,S.) 用贝叶斯的方法导出了重要的,相继律,,贝叶斯的方法和理论逐渐被人理解和重视起来 。 但由于当时贝叶斯方法在理论和实际应用中还存在很多不完善的地方,因而在十九世纪并未被普遍接受 。
2009-8-20 史忠植 高级人工智能 5
贝叶斯网络是什么
二十世纪初,意大利的菲纳特 ( B,de Finetti) 以及英国的杰弗莱 ( Jeffreys H.) 都对贝叶斯学派的理论作出重要的贡献 。 第二次世界大战后,瓦尔德 ( Wald A.) 提出了统计的决策理论,在这一理论中,贝叶斯解占有重要的地位;信息论的发展也对贝叶斯学派做出了新的贡献 。
1958年英国最悠久的统计杂志 Biometrika全文重新刊登了贝叶斯的论文,20世纪 50年代,以罗宾斯 ( Robbins H.)
为代表,提出了经验贝叶斯方法和经典方法相结合,引起统计界的广泛注意,这一方法很快就显示出它的优点,成为很活跃的一个方向 。
2009-8-20 史忠植 高级人工智能 6
贝叶斯网络是什么
随着人工智能的发展,尤其是机器学习,数据挖掘等兴起,为贝叶斯理论的发展和应用提供了更为广阔的空间 。 贝叶斯理论的内涵也比以前有了很大的变化 。 80年代贝叶斯网络用于专家系统的知识表示,90年代进一步研究可学习的贝叶斯网络,用于数据采掘和机器学习 。 近年来,贝叶斯学习理论方面的文章更是层出不穷,内容涵盖了人工智能的大部分领域,包括因果推理,不确定性知识表达,模式识别和聚类分析等 。 并且出现了专门研究贝叶斯理论的组织和学术刊物 ISBA
2009-8-20 史忠植 高级人工智能 7
贝叶斯网络的应用领域
辅助智能决策
数据融合
模式识别
医疗诊断
文本理解
数据挖掘
2009-8-20 史忠植 高级人工智能 8
统计概率统计概率,若在大量重复试验中,事件 A发生的频率稳定地接近于一个固定的常数 p,它表明事件 A
出现的可能性大小,则称此常数 p为事件 A发生的概率,记为 P(A),即
p= P(A)
可见概率就是频率的稳定中心 。 任何事件 A的概率为不大于 1的非负实数,即
0< P(A)< 1
2009-8-20 史忠植 高级人工智能 9
条件 概率条件概率,我们把事件 B已经出现的条件下,
事件 A发生的概率记做为 P(A|B)。 并称之为在
B出现的条件下 A出现的条件概率,而称 P(A)
为无条件概率 。
若事件 A与 B中的任一个出现,并不影响另一事件出现的概率,即当 P(A)= P(A·B)或 P(B)
= P(B·A)时,则称 A与 B是相互独立的事件 。
2009-8-20 史忠植 高级人工智能 10
加法定理两个不相容 (互斥 )事件之和的概率,等于两个事件概率之和,即
P(A+B)= P(A)+ P(B)
若 A,B为两任意事件,则:
P(A+B)= P(A)+ P(B)- P(AB)
2009-8-20 史忠植 高级人工智能 11
乘法定理设 A,B为两个任意的非零事件,则其乘积的概率等于 A(或 B)的概率与在 A(或 B)
出现的条件下 B(或 A)出现的条件概率的乘积 。
P(A·B)= P(A)·P(B|A)
或 P(A·B)= P(B)·P(A|B)
2009-8-20 史忠植 高级人工智能 12
贝叶斯网络定义图形描述概率描述
Cold Allegory Cat
Sneeze Scratch
C o ld = f a ls e C o ld = tr u e0,9 5 0,0 5c a t= f a ls e C a t= tr u e
0,9 8 0,0 2
A ll e g o r yC a t
Fa l s e T r u e
Fa l s e 0,9 5 0,0 5
tr u e 0,2 5 0,7 5
Sc r a t c hC a t
Fa l s e T r u e
Fa l s e 0,9 5 0,0 5
tr u e 0,5 0,5S c r a t c hC o l d A l l e g o r y
F a l s e T r u e
F a l s e F a l s e 0,9 9 0,0 1
F a l s e t r u e 0,2 0,7
t r u e F a l s e 0,3 0,8
t r u e T r u e 0,1 0,9
贝叶斯网络是表示变量间概率依赖关系的有向无环图,这里每个节点表示领域变量,每条边表示变量间的概率依赖关系,同时对每个节点都对应着一个条件概率分布表 (CPT),指明了该变量与父节点之间概率依赖的数量关系。
2009-8-20 史忠植 高级人工智能 13
几点说明
贝叶斯网络的特点:
双向推理能力 ( 预测和诊断 )
快速的调试和重构能力
具有较强的概率统计基础
用于人工智能和专家系统的不确定推理 ( 优于早期的基于规则的模式 ) 。
这种网络支持任何变量子集相对于另一子集的条件概率计算。
贝叶斯网络是领域中变量关系的直接表示,而不是推理过程。网络中的方向表示变量间真正的因果关系而不是推理过程的信息流向。
--因此在贝叶斯推理过程中,推理过程可以沿任何方向进行(预测、
诊断、解释。
从知识工程的角度讲,贝叶斯网络是用图形结构和数值参数来表示不确定性知识的知识系统,因而有时也称为因果网、信任网络和影响图。
2009-8-20 史忠植 高级人工智能 14
贝叶斯规则
基于条件概率的定义
p(Ai|E) 是在给定证据下的后验概率
p(Ai) 是先验概率
P(E|Ai) 是在给定 Ai下的证据似然
p(E) 是证据的预定义后验概率
==
i
ii
iiii
i ))p(AA|p(E
))p(AA|p(E
p(E)
))p(AA|p(EE)|p(A
== p(B)A)p(A)|p(Bp(B)B)p(A,B)|p(A A1 A2 A3 A4
A5A6
E
2009-8-20 史忠植 高级人工智能 15
贝叶斯网络的概率解释
任何完整的概率模型必须具有表示(直接或间接)该领域变量联合分布的能力。完全的枚举需要指数级的规模(相对于领域变量个数)
贝叶斯网络提供了这种联合概率分布的紧凑表示:分解联合分布为几个局部分布的乘积:
从公式可以看出,需要的参数个数随网络中节点个数呈线性增长,而联合分布的计算呈指数增长。
网络中变量间独立性的指定是实现紧凑表示的关键。这种独立性关系在通过人类专家构造贝叶斯网中特别有效。
= i iin paxPxxxP )|(),,( 21?
2009-8-20 史忠植 高级人工智能 16
Industrial
Processor Fault Diagnosis -
by Intel
Auxiliary Turbine Diagnosis -
GEMS by GE
Diagnosis of space shuttle
propulsion systems - VISTA
by NASA/Rockwell
Situation assessment for
nuclear power plant - NRC
Military
AuBmatic Target
Recognition - MITRE
AuBnomous control of
unmanned underwater
vehicle - Lockheed Martin
Assessment of Intent
Medical Diagnosis
Internal Medicine
Pathology diagnosis -
Intellipath by Chapman &
Hall
Breast Cancer Manager with
Intellipath
Commercial
Financial Market Analysis
Information Retrieval
Software troubleshooting
and advice - Windows 95 &
Office 97,and Software
debugging - American
Airlines’ SABRE online
reservation system
贝叶斯网络的应用
2009-8-20 史忠植 高级人工智能 17
贝叶斯网络-来自医疗诊断的例子
Visit B Asia
Tuberculosis
Tuberculosis
or Cancer
XRay Result Dyspnea
BronchitisLung Cancer
Smoking
Patient Information
Medical Difficulties
Diagnostic Tests
Medical DifficultiesTub or Can
True
True
False
False
Bronchitis
Present
Absent
Present
Absent
Present
0.90
0.70
0.80
0.10
Absent
0.l0
0.30
0.20
0.90
Dyspnea
2009-8-20 史忠植 高级人工智能 18
研究现状分析 (1)
密度估计
先验分布的选取原则
贝叶斯假设
共轭分布
杰弗莱原则
最大熵原则
不完全数据的密度估计
期望最大化方法( Expectation Maximization EM)
Gibbs抽样( Gibbs Sampling GS)
Bound and Collapse (BC)
2009-8-20 史忠植 高级人工智能 19
研究现状分析 (2)
简单贝叶斯学习模型
增广贝叶斯学习模型 (Augment-Simple Bayes)
基于 Boosting简单贝叶斯模型。
权调整技术( Geoffrey L,Webb )
增加扩展弧( Eamonn J,Keogh )
基于 Boosting 的模型组合( Charles Elkan )
结合决策树算法和 Boosting技术
( Kai Ming Ting Zijian Zheng )
2009-8-20 史忠植 高级人工智能 20
研究现状分析 (3)
PAC-Bayes 学习现代学习理论大致可以分为两大类:贝叶斯推理和 PAC
( Probability Approximation Correct)学习。这两类学习算法都以训练数据集作为输入,经过学习,输出一个概念或模型;它们也都关联着相应的正确性定理,PAC学习对独立同分布的训练样本集提供了很好的性能保证,而贝叶斯正确性定理能保证充分地利用先验信息。结合这两类学习算法的优点,产生了 PAC-Bayes学习理论。
David A Mcallester[1999] 给出了两个 PAC-Bayes定理
Ralf Herbrich 等提出了贝叶斯点机理论
2009-8-20 史忠植 高级人工智能 21
研究现状分析 (4)
贝叶斯神经网络模型
基于模型组合的贝叶斯神经网络模型
利用贝叶斯证据框架理论学习神经网络的结构
贝叶斯网络是表示变量间概率分布及关系的有向无环图。
贝叶斯网络的一个关键特征是它提供了把整个概率分布分解成几个局部分布的方法。
贝叶斯网络适合于对领域知识具有一定了解的情况,至少对变量间的依赖关系较清楚的情况。否则直接从数据中学习贝叶斯网的结构不但 复杂性较高 (随着变量的增加,指数级增加),网络维护代价昂贵,而且它的估计参数较多,为系统带来了 高方差,影响了它的预测精度。
贝叶斯网络学习模型
2009-8-20 史忠植 高级人工智能 22
研究内容( 1)
贝叶斯网络分类器简单贝叶斯分类模型
)|()( )()|(
1
=
=
m
j
ij
i
i CaPAP
CPACP
n
n
n
n
nIDE
kkkk?
==
},|{ 0^^
训练样本集 D 先验知识 I
)|( ij CaP)( iCP
)(1 11 '' prii cc == )(1 '' prii cc=
2009-8-20 史忠植 高级人工智能 23
构建贝叶斯网
Bayesian
Network
Bayesian
Network
Bayesian
Network
Problem
Domain
Problem
Domain
Problem
Domain
Expert
Knowledge
Expert
Knowledge
Training
Data
Training
Data
Probability
Elicitor
Learning
Algorithm
Learning
Algorithm
2009-8-20 史忠植 高级人工智能 24
研究内容( 1)
贝叶斯网络分类器 --SBC的增强
=?,,ANB?贝叶斯网是表示变量间连结关系的有向无环图
贝叶斯网络的学习结构学习参数学习基于评分函数的结构学习基于条件独立性检验的结构学习
2009-8-20 史忠植 高级人工智能 25
从数据中学习
共轭分布族
先验与后验属于同一分布族
预先给定一个似然分布形式
对于变量定义在 0-1之间的概率分布,存在一个离散的样本空间
Beta 对应着 2 个似然状态
多变量 Dirichlet 分布对应 2个以上的状态
2009-8-20 史忠植 高级人工智能 26
1)n(n
m/n)m(1variance
-=
n
mmean=
x)(1xm)(n(m) (n)n)m,|(xp 1mn1mBeta --= ---GG G
-1
0
1
2
3
4
0 0,5 1 1,5
x
p
(x
|m
,n
)
m =1,n =2 m =2,n =4 m =1 0,n =2 0
先验分布的选取- beta分布
2009-8-20 史忠植 高级人工智能 27
先验分布的选取-多项 Dirichlet分布
1)m(m
)m/m(1m
stateitheofvariance
m
mstateitheofmean
...xxx)(m)...(m)(m
)m(
)m,...,m,m|(xp
N
1i
i
N
1i
i
N
1i
iii
th
N
1i
i
ith
1m1-m1m
N21
N
1i
i
N21Dirichlet
N21
-
=
=
GGG
G
=

==
=
=
--=
2009-8-20 史忠植 高级人工智能 28
贝叶斯网络的结构学习
基于搜索评分的方法,
初始化贝叶斯网络为孤立节点
使用启发式方法为网络加边
使用评分函数评测新的结构是否为更好
贝叶斯评分( Bayesian Score Metric)
基于墒的评分
最小描述长度 MDL(Minimal Description Length)
重复这个过程,直到找不到更好的结构
基于依赖分析的方法,
通过使用条件独立性检验 conditional independence
(CI) 找到网络的依赖结构
2009-8-20 史忠植 高级人工智能 29
基于 MDL的贝叶斯网结构学习
计算每一点对之间的互信息:
建立完全的无向图,图中的顶点是变量,边是变量之间的互信息
建立最大权张成树
根据一定的节点序关系,设置边的方向
=
yx,
P p ( x ) p ( y )
y)p ( x,y ) lo gP ( x,Y)( X ;I
2009-8-20 史忠植 高级人工智能 30
基于 CI的贝叶斯网络学习
假定:节点序已知
第一阶段 (Drafting)
计算每对节点间的互信息,建立完整的无向图,
第二阶段 (Thickening)
如果接点对不可能 d-可分的话,把这一点对加入到边集中。
第三阶段 (Thinning)
检查边集中的每个点对,如果两个节点是 d-可分的,那么移走这条边。
2009-8-20 史忠植 高级人工智能 31
基于条件独立性检验 (CI)的贝叶斯网络结构学习
1)初始化图结构 B=<N,A,?>,A=?,R=?,S=?;
2)对每一节点对,计算它们的互信息,并将互信息大于某一域值的节点对按互信息值的大小顺序加入到 S中;
3)从 S中取出第一个点对,并从 S中删除这个元素,把该点对加入到边集
A中;
4) 从 S中剩余的点对中,取出第一个点对,如果这两各界点之间不存在开放路径,再把该点对加入 A到中,否则加入到 R中;
5)重复 4),直到 S为空;
6)从 R中取出第一个点对;
7)找出该点对的某一块集,在该子集上做独立性检验,如果该点对的两个节点,仍然相互依赖,则加入到 A中;
8) 重复 6),直到 R为空;
9) 对 A中的每一条边,如果除这条边外,仍旧含有开放路径,则从 A中临时移出,并在相应的块集上作独立性测试,如果仍然相关,则将其返回到 A中,否则从 A中删除这条边。
2009-8-20 史忠植 高级人工智能 32
树增广的朴素贝叶斯网 TAN的结构学习
1 ) 计算各属性节点间的条件互信息 ;
2 ) 以属性变量为节点,以条件互信息为节点之间的连接权,构造无向完全图;
3 ) 生成最大权张成树;
4 ) 转换无向的最大权张成树为有向树;
5 ) 从类别变量向各属性节点引一条有向变,生成 T AN
模型。
=
CAA ji
ji
jiji
ji
CAPCAP
CAAP
CAAPCAAI
,,)|()|(
)|;(
lo g)|;()|,(
2009-8-20 史忠植 高级人工智能 33
研究内容( 2)
主动贝叶斯网络分类器
主动学习:
主动在候选样本集中选择测试例子,并将这些实例以一定的方式加入到训练集中。
选择策略抽样选择投票选择随机抽样相关抽样不确定性抽样
2009-8-20 史忠植 高级人工智能 34
主动贝叶斯网络分类器
学习过程输入:带有类别标注的样本集 L,为带类别标注的候选样本集 UL,选择停止标准 e,每次从候选集中选择的样本个数 M
输出:分类器 C.
过程:
While not e
{
TrainClassifer(L,C) //从 L中学习分类器 C;
For each x计算 ES;
SelectExampleByES(S,UL,M,ES) //根据 ES从 UL中选择 M个例子的子集 S.
LabeledAndAdd(S,L); //用当前的分类器 C标注 S中的元素,并把它加入到 L中。
Remove(S,UL); //从 UL中移走 S.
CheckStop(&e); //根据当前状态设置退出条件
}
Return C;
2009-8-20 史忠植 高级人工智能 35
主动贝叶斯网络分类器
基于最大最小熵的主动学习首先从测试样本中选择出类条件熵最大和最小的候选样本( MinExample,MaxExample),然后将这两个样本同时加入到训练集中。类条件熵最大的样本的加入,使得分类器能够对具有特殊信息的样本的及早重视;而类条件熵最小的样本是分类器较为确定的样本,对它的分类也更加准确,从而部分地抑制了由于不确定性样本的加入而产生的误差传播问题
=-= || 1 ))|(ln ()|()|( Ci ii xcpxcpxCH
2009-8-20 史忠植 高级人工智能 36
主动贝叶斯网络分类器
基于分类损失与不确定抽样相结合的主动学习
= x DD dxxpxcpxcpLL )()|(),|(( ^分类损失:
选择过程,从测试样本中选择个熵较大的样本,组成集合 maxS,然后对此集合中每个元素计算相对于该集合的分类损失和,选择分类损失和最小的样本做标注并加入到训练样本集中。
2009-8-20 史忠植 高级人工智能 37
主动贝叶斯网络分类器
A B C D E F 精度评定 (%)
精度 召回率
A 645 6 5 0 0 0 0.7670 0.9832
B 140 132 0 0 0 0 0.9429 0.4853
C 25 2 50 0 0 0 0.8475 0.6494
D 5 0 2 33 1 0 0.9167 0.8049
E 9 0 0 3 51 0 0.9623 0.8095
F 17 0 2 0 1 64 1.0000 0.7619
A B C D E F 精度评定 (%)
精度 召回率
A 641 11 4 0 0 0 0.8412 0.9771
B 81 191 0 0 0 0 0.8565 0.7022
C 8 21 48 0 0 0.8571 0.6234
D 6 0 2 32 1 0 0.9143 0.7273
E 9 0 0 3 51 0 0.9623 0.8095
F 17 0 2 0 1 64 1.0000 0.7619
初始标注样本数,96
为标注训练样本数,500
测试集样本数,1193
ALearnerByMaxMinEntropy测试结果
ALearnerByUSandCL测试结果
2009-8-20 史忠植 高级人工智能 38
基于最大后验概率的贝叶斯层次聚类
两种常用的聚类模式基于距离的聚类基于模型的聚类:搜索与模型结构最匹配的划分
混合模型聚类 (mixture models)
数据是通过多个相互独立的过程产生的,其中每个产生过程对应着一个类别。数据产生的概率可以用混合模型表示,并假设数据的分布是一些简单分布的线性组合。
=
= K
k
kk MdPMPMdP
1
)|()()|(
2009-8-20 史忠植 高级人工智能 39
基于最大后验概率的贝叶斯层次聚类
两种常用的聚类模式基于距离的聚类基于模型的聚类:搜索与模型结构最匹配的划分
混合模型聚类 (mixture models)
数据是通过多个相互独立的过程产生的,其中每个产生过程对应着一个类别。数据产生的概率可以用混合模型表示,并假设数据的分布是一些简单分布的线性组合。
=
= K
k
kk MdPMPMdP
1
)|()()|(
2009-8-20 史忠植 高级人工智能 40
贝叶斯后验模型选择不是最大化似然函数,而是通过引入潜在的类别标注,找到似然函数的解析表达式,通过贪婪的层次搜索获得最优的组合

Dd
dd dPPDP )|()()|( )()(
=
= K
k
k
d
k
d cdPdP
1
)()( )|()|(
2009-8-20 史忠植 高级人工智能 41
贝叶斯后验模型选择采用最大后验估计的层次聚类算法 MSBP
层次聚类,}{},{
1 yxyxkk cccc-?=
)|(
)|(l o gm a xa r g)|(m a xa r g 11
11 DP
DPDP
k
kk
kk?

采用条件期望估计的层次聚类算法 MSBE
2009-8-20 史忠植 高级人工智能 42
体育类文章聚类准确率变化(局部)
0.5
0.6
0.7
0.8
0.9
460 464 468 472 476 480 484
聚类步骤平均准确率(
A
v
e
r
a
g
e
Accuracy)
HBC
MSBE
MSBP
聚类准确率随聚类过程的变化(局部)
2009-8-20 史忠植 高级人工智能 43
贝叶斯网中的证据推理目的:通过联合概率分布公式,在给定的网络结构和已知证据下,计算某一事件的发生的概率。
E
)|( EAP
网络证据查询推理
)|( EAP
贝叶斯推理可以在反复使用贝叶斯规则而获得
== p(B)A)p(A)|p(Bp(B)B)p(A,B)|p(A
2009-8-20 史忠植 高级人工智能 44
推理方法概述
精确推理网络的拓扑结构是推理复杂性的主要原因;
当前的一些精确算法是有效地,能够解决现实中的大部分问题由于对知识的认知程度,精确推理还存在一些问题
近似推理证据的低似然性和函数关系 是近似推理中复杂性的主要原因
NP Hard
2009-8-20 史忠植 高级人工智能 45
影响推理的因素
网络结构的特征
网络的拓扑结构
网络的大小
网络中变量的类型(离散、连续)
变量的分布墒
相关查询的特征
任务
查询类型 (批处理、异步执行)
可用的计算资源(嵌入式系统、并行处理)
相关证据的特征
证据的特征
2009-8-20 史忠植 高级人工智能 46
查询的任务类型
预测对给定的模型,将要发生什么
给定证据下的后验计算
所有的边界后验
指定的边界后验
指定的联合条件查询
最可能的假设一个最可能的
n 个最可能的
决策策略
2009-8-20 史忠植 高级人工智能 47
继续前面的医疗诊断例子
T u b e r c u l o s i s
P r e s e n t
A b s e n t
1,0 4
9 9,0
X R a y R e s u l t
A b n o r m a l
N o r m a l
1 1,0
8 9,0
T u b e r c u l o s i s o r C a n c e r
T r u e
F a l s e
6,4 8
9 3,5
L u n g C a n c e r
P r e s e n t
A b s e n t
5,5 0
9 4,5
D y s p n e a
P r e s e n t
A b s e n t
4 3,6
5 6,4
B r o n c h i t i s
P r e s e n t
A b s e n t
4 5,0
5 5,0
V i s i t T o A s i a
V i s i t
N o V i s i t
1,0 0
9 9,0
S m o k i n g
S m o k e r
N o n S m o k e r
5 0,0
5 0,0
贝叶斯推理中非条件分布和边界分布是常见的查询模式
一个节点的边界分布也称为该节点的信任函数
2009-8-20 史忠植 高级人工智能 48
推理过程中的信任传播
T u b e r c u l o s i s
P r e s e n t
A b s e n t
5,0 0
9 5,0
X R a y R e s u l t
A b n o r m a l
N o r m a l
1 4,5
8 5,5
T u b e r c u l o s i s o r C a n c e r
T r u e
F a l s e
1 0,2
8 9,8
L u n g C a n c e r
P r e s e n t
A b s e n t
5,5 0
9 4,5
D y s p n e a
P r e s e n t
A b s e n t
4 5,0
5 5,0
B r o n c h i t i s
P r e s e n t
A b s e n t
4 5,0
5 5,0
V i s i t T o A s i a
V i s i t
N o V i s i t
1 0 0
0
S m o k i n g
S m o k e r
N o n S m o k e r
5 0,0
5 0,0
2009-8-20 史忠植 高级人工智能 49
推理算法
精确推理
联合概率计算
Na?ve Bayesian
图约简算法
Polytree算法
近似推理
前向模拟推理
随机模拟推理
The algorithm’s purpose is,… fusing and propagating the impact
of new evidence and beliefs through Bayesian networks so that
each proposition eventually will be assigned a certainty measure
consistent with the axioms of probability theory.”
(Pearl,1988,p 143)
2009-8-20 史忠植 高级人工智能 50
精确推理-计算联合概率任何查询都可以通过联合概率回答步骤:
计算联合概率
P(AB)=P(A)*P(B|A)
边界化不在查询中的变量
P(B)=ΣAP(AB)
效率低
A B
2009-8-20 史忠植 高级人工智能 51
精确推理- Na?ve Bayesian
结构简单-只有两层结构
推理复杂性与网络节点个数呈线性关系
2009-8-20 史忠植 高级人工智能 52
How a naive Bayes classifies?
Bayes Decision rule,Find the c that maximizes (1)
(1)?
=
=
=
k
i
i
k
k
cxpcp
cxpcxpcxpcp
xxxcp
1
21
21
)|()(
)|(),,,,,,|()|()(
),...,,,(
Given an instance vector
kxxx,...,,21
Calculate for all class c),.,,,,,( 21 kxxxcp
2009-8-20 史忠植 高级人工智能 53
How to train a naive Bayes?
(discrete case)
Suppose Xj is a discrete variable whose value
is xj then usually we can estimate
Where is # of the training examples belonging to
class c and is # of training examples belonging
to class c and having their Xj=xj; αj,αare,prior
parameters.”
cn
cjy
from training data,(Dirichlet priors;[Cooper,1999])
)|( cxp j
c
cjj
j n
ycxp
=
)|(?
2009-8-20 史忠植 高级人工智能 54
How to train a naive Bayes?
continuous case
Parameter estimation
Assuming is Gaussian (Duda & Hart
1973)
Discretization
Equal width interval binning
Bin log l (Spector,1990)
1-R (Holts,1994)
Entropy-based (Fayyad & Irani,1993)
)|( cXp j
2009-8-20 史忠植 高级人工智能 55
图约简算法-一般原理
基本观点任何概率查询可以表示成网络的子网,推理的目的是把网络分解成几个子网
三个基本操作
拟转弧操作( Arc Reversal)- 贝叶斯公式
孤寡点移出 (Barren node removal)- 求和公式
值节点归并 (Merge with Value node)- 期望最大化
2009-8-20 史忠植 高级人工智能 56
约简算法- 拟转弧操作
X1
X3
X2
X1
X3
X2
X1
X3
X2
X1
X3
X2
p(x1,x2,x3) = p(x3 | x1) p(x2 | x1) p(x1)
p(x1,x2,x3) = p(x3 | x2,x1) p(x2) p( x1)
p(x1,x2,x3) = p(x3 | x1) p(x2,x1)
= p(x3 | x1) p(x1 | x2) p( x2)
p(x1,x2,x3) = p(x3,x2 | x1) p( x1)
= p(x2 | x3,x1) p(x3 | x1) p( x1)
2009-8-20 史忠植 高级人工智能 57
约简算法- 孤寡点移出孤寡点-没有孩子的节点
2009-8-20 史忠植 高级人工智能 58
约简算法-值节点归并值节点-证据节点或赋值节点
2009-8-20 史忠植 高级人工智能 59
Polytree算法-介绍
该算法由 Pearl 于 1982年首次提出
基本观点计算边界后验的消息传递机制
Lambda 算子:消息向上传向父亲
pi 算子:消息向下传向孩子
2009-8-20 史忠植 高级人工智能 60
Polytree算法-单连通网定义,在任何两个节点之间存在且仅存在一条路径(忽略方向)
X
Multiple parents
and/or
multiple children
2009-8-20 史忠植 高级人工智能 61
单连通网的表示
X 表示 m维随机向量 ;
x 表示随机向量可能的取值
e 表示 m维向量的一个取值
My|x 是条件概率
p(y|x)的似然矩阵
p(y1|x1) p(y2|x1),,,p(yn|x1)
p(y1|x2) p(y2|x2),,,p(yn|x2)
.,,,,,,,,
p(y1|xm) p(y2|xm),,,p(yn|xm)
y
=
x
Bel (x) = p(x|e) 表示随机向量的后验;
f(x) × g(x) 表示向量的叉积
f(x)? g(x)表示向量的点积
是标准化常量
2009-8-20 史忠植 高级人工智能 62
概率的双向传播
e+
e-
X
Y
Z
(e+)
(x)
(y)
(y)
(z)
(e-)
每个节点向儿子节点发送 pi 消息向父节点发送 lambda消息
Bel(Y) = p(y|e+,e-) =(y)T ×?(y)
其中
(y) = p(y|e+),先验证据
(y) = p(e-|y),似然证据
(y) =?x p(y|x,e+) × p(x| e+) =?x p(y|x) ×?(x)
=?(x)? My|x
(y) =?z p(e-|y,z) × p(z| y) =?z p(e-|z) × p(z| y)
=?z?(z) × p(z| y) = Mz|y(z)
2009-8-20 史忠植 高级人工智能 63
传播算法
对每个节点引入证据时,产生,
沿着弧的方向传播一组,?” 消息
逆着弧的方向传播一组,?” 消息
对接收,?” or,?” 消息的每个节点,
节点修正它的,?”或,?”,并发送到网络中
使用修正的,?”或,?”,更改结点的信任函数 BEL
T
BEL(t)
(t)?(t)
U
BEL(t)
(t)?(t)
X
BEL(t)
(t)?(t)
Y
BEL(t)
(t)?(t)
Z
BEL(t)
(t)?(t)
Mu|t M
x|u My|x Mz|y
2009-8-20 史忠植 高级人工智能 64
实例-描述
p(A1) = 0.9
p(A2) = 0.1
M B|A =
M C|B =
A1
A2
B1
B2
C1
C2
C3
A
B
C
.8,2
.1,9[ ]
.5,4,1
.1,3,6[ ]
Ch Di
A1
A2
C1 C2 C3
B1
B2
2009-8-20 史忠植 高级人工智能 65
实例-算子设定
A
B
C
(1) 初始化 lambda 算子为单位向量 ; Bel(A) =(A) ×?(A)
(A) Bel(A)?(A)
A1 0.9 0.9 1.0
A2 0.1 0.1 1.0
(2)?(B) =?(A) MB|A; Bel(B) =(B) ×?(B)
(B) Bel(B)?(B)
B1 0.73 0.73 1.0
B2 0.27 0.27 1.0
(3)?(C) =?(B) MC|B; Bel(C) =(C) ×?(C)
(C) Bel(C)?(C)
C1 0.39 0.40 1.0
C2 0.35 0.36 1.0
C3 0.24 0.24 1.0
2009-8-20 史忠植 高级人工智能 66
实例-第一次传播
[ ]
t
TR T
=
=
0
5?( ),1,6
[ ]
t = 0
(lR) =,8,2?
t = 1
(A) =?(IR)
(A) Bel(A)?(A)
A1 0.8 0.8 1.0
A2 0.2 0.2 1.0
(B) Bel(B)?(B)
B1 0.73 0.73 1.0
B2 0.27 0.27 1.0
(C) Bel(C)?(C)
C1 0.39 0.3 0.5
C2 0.35 0.5 1.0
C3 0.24 0.2 0.6
t = 1
(C) =?(TR)
Intel.
Rpt.
Troop
Rpt.
A
B
C
2009-8-20 史忠植 高级人工智能 67[ ]
t
TR T
=
=
0
5?( ),1,6
[ ]
t = 0
(lR) =,8,2(A) Bel(A)?(A)Paris 0.8 0.8 1.0
Med,0.2 0.2 1.0
t = 2
(B) =?(A) MB|A
(B) Bel(B)?(B)
B1 0.66 0.66 0.71
B2 0.34 0.34 0.71
t = 2
(B) = MC|B?(A)
(C) Bel(C)?(C)
C1 0.39 0.3 0.5
C2 0.35 0.5 1.0
C3 0.24 0.2 0.6
实例-第二次传播
Intel.
Rpt.
Troop
Rpt.
A
B
C
2009-8-20 史忠植 高级人工智能 68
实例-第三次传播
(A) Bel(A)?(A)
A1 0.8 0.8 0.71
A2 0.2 0.2 0.71
t = 3
(A) = MB|A?(B)
(B) Bel(B)?(B)
B1 0.66 0.66 0.71
B2 0.34 0.34 0.71
t = 3
(C) =?(B) MC|B
(C) Bel(C)?(C)
C1 0.36 0.25 0.5
C2 0.37 0.52 1.0
C3 0.27 0.23 0.6
Intel.
Rpt.
Troo
p
Rpt.
A
B
C
2009-8-20 史忠植 高级人工智能 69
= TVUN?= ~~ TVUN
∑ →?~
LSA 的应用信息滤波文档索引视频检索向量的相似性
TTT UUNNNN ~ 2~~?=?
特征的相似性
TTT VVNNNN ~ 2~~?=?
贝叶斯潜在语义分析 BLSA—LSA
2009-8-20 史忠植 高级人工智能 70
贝叶斯潜在语义分析 BLSA
文档产生模型以一定的概率选择文档 d )|(?dp
以一定的概率选择一潜在变量 z ),|(?dzp
以一定的概率产生特征 w
),|(?zwp
产生如下的联合概率模型
=
Zz
zdpzwpzpwdp ),|(),|()|()|,(
2009-8-20 史忠植 高级人工智能 71
最大化似然函数目的在于估计下面的分布参数贝叶斯潜在语义分析 BLSA
2009-8-20 史忠植 高级人工智能 72
EM 算法求得最大似然
= ' );|();|()|(
);|();|()|();,|(
'''
z zwpzdpzp
zwpzdpzpwdzP

E步
M步
= ','' );,|(),(
);,|(),();|(
wd
d
wdzpwdn
wdzpwdnzwp

= wd w wdzpwdn
wdzpwdnzdp
,
''
' );,|(),(
);,|(),();|(

= wdwd wdn
wdzpwdnzp
,
,
),(
);,|(),()|(
-650000
-600000
-550000
-500000
-450000
-400000
1 2 3 4 5 6 7 8 9 10 11
n u m be r of i t e r a t ion
log-
li
ke
li
hood
似然函数值与迭代步骤的关系
2009-8-20 史忠植 高级人工智能 73
半监督 web挖掘算法 (1)
算法描述,
已知:
},,{ 21 ndddD?=
},,{ 21 mwwwW?=
},,{ 21 kzzzZ?= },,{ 21 k=
求划分,)(;
1
jiDDDD jik
j
j?==
=

贝叶斯潜在语义分析 BLSA
2009-8-20 史忠植 高级人工智能 74
半监督 web挖掘算法 (2)
解决策略:
1,划分 D为两个集和,]}1[,,|{ kjdzjdD jL=
]}1[,,|{ kjdzjdD jU=
3,使用 Naive Bayesian标注 UD
2,使用 BLSA 标注 LD
2009-8-20 史忠植 高级人工智能 75
1) 使用 BLSA估计分布参数
2) 使用最大后验概率标注文档
)}|({m a x)( iij zdpzdl ==
1,使用 BLSA 标注 LD
半监督 web挖掘算法 (3)
2009-8-20 史忠植 高级人工智能 76
半监督 web挖掘算法 (3)
2,使用 Naive Bayesian标注 UD

= =
=
||
1
||
1
);|()|(lo g)( )(lo g)|(
D
i
C
j
jjijji cdpcpzDp
pDl
)},|({m a x),|( ]1[ kjkjki dcpdcp=
)(0;1 ijzz kjki?==
M步,
||||
1))((|| 1
ZD
cdcIDi ii
c j?
=
=? =?

= =
=
=?
=?
= m
k
D
i jiki
D
i jitij
cw cdcIwdn
cdcIwdn
jt
1
||
10
||
1
| ))((),(
))((),(
E步,
似然函数
2009-8-20 史忠植 高级人工智能 77
试验结果 1000 足球类文档876 特征词
0
50
100
150
200
250
300
350
Aodong
Beijingg...
Taishan
Xiamenxi...
Haishi
Wuhai
Tsingdao
Shenzhen...
JiaA
National...
JiaB
Yijia
Yingchao
Dejia
Worldcup
14 Latent variables
7 Latent variables
半监督 web挖掘算法 (4)
2009-8-20 史忠植 高级人工智能 78
总结
贝叶斯网络是表示不确定性知识的一种有效方法
贝叶斯网络的参数学习与结构学习是比较活跃的研究领域
贝叶斯网络的推理能够计算出任何给定事件在给定条件下发生的可能性
贝叶斯网络具有广阔的应用前景。
2009-8-20 史忠植 高级人工智能 79
相关网址
http://www.cs.ucla.edu/judea/
http://www.cs.ucla.edu/drawiche/cs262a/
http://www.stanford.edu/class/cs228
http://www.cs.berkeley.edu/murphyk/bayes/bayes.html
http://www.cs.berkeley.edu/murphyk/pomdp.html
http://deas.harvard.edu/courses/cs28lr
http://stat.duke.edu/courses/spring99/sta294
http://www.ics.uci.edu/dechter/275B.html
2009-8-20 史忠植 高级人工智能 80
谢 谢 !