机器学习基础补习12---贝叶斯网络

本文深入探讨了贝叶斯网络的基础,包括相对熵、互信息和信息增益的概念。重点介绍了朴素贝叶斯分类器及其在文本分类中的应用,强调了特征独立性和拉普拉斯平滑的重要性。同时,讨论了条件独立的D-separation原则,以及如何通过贝叶斯网络判断变量间的独立性。此外,还提及了马尔科夫模型在序列建模中的角色,并简要概述了构建贝叶斯网络的过程。
摘要由CSDN通过智能技术生成

这篇文章写一下有关贝叶斯网络的部分,这是机器学习后半部分的一个非常基础的内容。
主要内容
(1)复习本次将用到的知识:相对熵、互信息(信息增益)
(2)朴素贝叶斯
(3)贝叶斯网络的表述
a.条件概率表参数个数分析
b.马尔科夫模型
(4)D-separation
a.条件独立的三种类型
b.Markov Blanket
(5)网络的构建流程
混合(离散+连续)网络:线性高斯模型
(6)Chow-Liu算法:最大权生成树MSWT

复习:相对熵
(1)相对熵,又称互熵,交叉熵,鉴别信息,Kullback熵,Kullback-Leible散度等
(2)设p(x)、q(x)是X中取值的两个概率分布,则p对q的相对熵是:
在这里插入图片描述
(3)说明:
a.相对熵可以度量两个随机变量的“距离”
b.一般的, D ( p ∣ ∣ q ) ≠ D ( q ∣ ∣ p ) D(p||q)≠D(q||p) D(pq)=D(qp)
c. D ( p ∣ ∣ q ) ≥ 0 , D ( q ∣ ∣ p ) ≥ 0 D(p||q)≥0,D(q||p)≥0 D(pq)0D(qp)0
Jensen不等式
复习:互信息
(1)两个随机变量X、Y的互信息,定义为X,Y的联合分布和独立分布乘积的相对熵
(2) I ( X , Y ) = D ( P ( X , Y ) ∣ ∣ P ( X ) P ( Y ) ) I(X,Y)=D(P(X,Y)||P(X)P(Y)) I(X,Y)=D(P(X,Y)P(X)P(Y))
在这里插入图片描述
复习:信息增益
(1)信息增益表示得知特征A的信息而使得类X的信息不确定性减少的程度
(2)定义:特征A对训练数据集D的信息增益g(D,A),定义为集合D的经验熵H(D)与特征A给定条件下D的经验条件熵H(D|A)之差,即:
a. g ( D , A ) = H ( D ) − H ( D ∣ A ) g(D,A)=H(D)-H(D|A) g(D,A)=H(D)H(DA)
b.显然,这即为训练数据集D和特征A的互信息

概率
(1)条件概率:
在这里插入图片描述
(2)全概率公式:
在这里插入图片描述
(3)贝叶斯(Bayes)公式:
在这里插入图片描述
贝叶斯公式带来的思考: P ( A ∣ D ) = P ( D ∣ A ) P ( A ) P ( D ) P(A|D)=\frac{P(D|A)P(A)}{P(D)} P(AD)=P(D)P(DA)P(A)
(1)给定某些样本D,在这些样本中计算某结论 A 1 、 A 2 . . . A n A_1、A_2...A_n A1A2...An出现的概率,即 P ( A i ∣ D ) P(A_i|D) P(AiD)
在这里插入图片描述

a.第一个公式:贝叶斯公式
b.第二个等式:样本给定,则对于任何 A i , P ( D ) A_i,P(D) Ai,P(D)都是常数,仅为归一化因子
c.第三个箭头:若这些结论 A 1 、 A 2 . . . A n A_1、A_2...A_n A1A2...An的先验概率相等(或近似),则得到最后一个等式:即第二行的公式

贝叶斯公式的应用
8支步枪中有5支已校准过,3支未校准。一名射手用校准过的枪射击,中靶概率为0.8;用未校准过的枪射击,中靶概率为0.3;现从8支枪中随机取一支设计,结果中靶。求该枪是已校准过的概率
在这里插入图片描述
朴素贝叶斯的假设
(1)一个特征出现的概率,与其他特征(条件)独立(特征独立性)
其实是:对于给定分类的条件下, 特征独立
(2)每个特征同等重要(特征均衡性)
以文本分类为例
(1)样本:10000封邮件,每个邮件被标记为垃圾邮件或者非垃圾邮件
(2)分类目标:给定第10001封邮件,确定它是垃圾邮件还是非垃圾邮件
(3)方法:朴素贝叶斯
分析
(1)类别c:垃圾邮件 c 1 c_1 c1,非垃圾邮件 c 2 c_2 c2
(2)词汇表,两种建立方法:
a.使用现成的单词词典
b.将所有邮件中出现的单词都统计出来,得到词典
c.记单词数目为N
(3)将每个邮件m映射成纬度为N的向量x
若单词 w i w_i wi在邮件m中出现过,则 x i = 1 x_i=1 xi=1,否则, x i = 0 x_i=0 xi=0。即邮件的向量化: m → ( x 1 , x 2 , . . . x N ) m\to (x_1,x_2,...x_N) m(x1,x2,...xN)
(4)贝叶斯公式: P ( c ∣ x ) = P ( x ∣ c ) ∗ P ( c ) / P ( x ) P(c|x)=P(x|c)*P(c)/P(x) P(cx)=P(xc)P(c)/P(x)
a. P ( c 1 ∣ x ) = P ( x ∣ c 1 ) ∗ P ( c 1 ) / P ( x ) P(c_1|x)=P(x|c_1)*P(c_1)/P(x) P(c1x)=P(xc1)P(c1)/P(x)
b. P ( c 2 ∣ x ) = P ( x ∣ c 2 ) ∗ P ( c 2 ) / P ( x ) P(c_2|x)=P(x|c_2)*P(c_2)/P(x) P(c2x)=P(xc2)P(c2)/P(x)
注意这里x是向量

分解
(1) P ( c ∣ x ) = P ( x ∣ c ) ∗ P ( c ) / P ( x ) P(c|x)=P(x|c)*P(c)/P(x) P(cx)=P(xc)P(c)/P(x)
(2) P ( x ∣ c ) = P ( x 1 , x 2 . . . x N ∣ c ) = P ( x 1 ∣ c ) ∗ P ( x 2 ∣ c ) . . . P ( x N ∣ c ) P(x|c)=P(x_1,x_2...x_N|c)=P(x_1|c)*P(x_2|c)...P(x_N|c) P(xc)=P(x1,x2...xNc)=P(x1c)P(x2c)...P(xNc)
特征条件独立假设
(3) P ( x ) = P ( x 1 , x 2 , . . . , x N ) = P ( x 1 ) ∗ P ( x 2 ) . . . P ( x N ) P(x)=P(x_1,x_2,...,x_N)=P(x_1)*P(x_2)...P(x_N) P(x)=P(x1,x2,...,xN)=P(x1)P(x2)...P(xN)
特征独立假设
(4)带入公式: P ( c ∣ x ) = P ( x ∣ c ) ∗ P ( c ) / P ( x ) P(c|x)=P(x|c)*P(c)/P(x) P(cx)=P(xc)P(c)/P(x)
(5)等式右侧各项的含义:
a. P ( x i ∣ c j ) : 在 c j ( 此 题 目 , c j 要 么 为 垃 圾 邮 件 1 , 要 么 为 非 垃 圾 邮 件 2 ) 的 前 提 下 , 第 i 个 单 词 x i 出 现 的 概 率 P(x_i|c_j):在c_j(此题目,c_j要么为垃圾邮件1,要么为非垃圾邮件2)的前提下,第i个单词x_i出现的概率 P(xicj):cjcj12ixi
b. P ( x i ) : P(x_i): P(xi):在所有样本中,单词 x i x_i xi出现的概率
c. P ( c j ) : P(c_j): P(cj):在所有样本中,邮件类别 c j c_j cj出现的概率

拉普拉斯平滑
(1) p ( x 1 ∣ c 1 ) p(x_1|c_1) p(x1c1)是指的:在垃圾邮件 c 1 c_1 c1这个类别中,单词x1出现的概率
x 1 x_1 x1是待考察的邮件中的某个单词
(2)定义符号
n 1 : n_1: n1:在所有垃圾邮件中单词 x 1 x_1 x1出现的次数,如果 x 1 x_1 x1没有出现过,则 n 1 = 0 n_1=0 n1=0
n:属于 c 1 c_1 c1类的所有文档的出现过的单词总数目
(3)得到公式:
在这里插入图片描述
(4)拉普拉斯平滑:
在这里插入图片描述
其中,N是所有单词的数目,修正分母是为了保证概率和为1
(5)同理,以同样的平滑方案处理 p ( x 1 ) p(x_1) p(x1)
对朴素贝叶斯的思考
(1)拉普拉斯平滑能够避免0/0带来的算法异常
(2)要比较的是P(c1|x)和P(c2|x)的相对大小,而根据公式 P ( c ∣ x ) = P ( x ∣ c ) ∗ P ( c ) / P ( x ) P(c|x)=P(x|c)*P(c)/P(x) P(cx)=P(xc)P(c)/P(x),二者的分母都是除以P(x),实践时可以不计算该系数
(3)编程的限制:小数乘积下溢怎么办?
(4)问题:一个词在样本中出现多次,和一个词在样本中出现一次,形成的次向量相同
a.由0/1改成记数
(5)如何判断两个文档的距离
夹角余弦
(6)如何判定该分类器的正确率
交叉验证
贝叶斯网络
(1)把某个研究系统中涉及的随机变量,根据是否条件独立绘制在一个有向图中,就形成了贝叶斯网络
(2)贝叶斯网络(Bayesian Network),又称有向无环图模型(directed acyclic graphical model,DAG),是一种概率图模型,根据概率图的拓扑结构,考察一组随机变量{ X 1 , X 2 . . . X n X_1,X_2...X_n X1,X2...Xn}及其n组条件概率分布的性质
(3)一般而言,贝叶斯网络的有向无环图中的节点表示随机变量,他们可以是可观察到的变量,或隐变量、未知参数等。连接两个节点的箭头代表此两个随机变量具有因果关系(或非条件独立)。若两个节点间以一个单箭头连接在一起,表示其中一个结点是“因”,另一个是“果”,两节点就会产生一个条件概率值
(4)每个结点在给定其直接前驱时,条件独立于其非后继

一个简单的贝叶斯网络
p ( a , b , c ) = p ( c ∣ a , b ) p ( b ∣ a ) p ( a ) p(a,b,c)=p(c|a,b)p(b|a)p(a) p(a,b,c)=p(ca,b)p(ba)p(a)
在这里插入图片描述
全连接贝叶斯网络
每一对结点之间都有边连接
在这里插入图片描述
一个“正常”的贝叶斯网络
在这里插入图片描述

(1)有些边缺失
(2)直观上:a.x1和x2独立 b.x6和x7在x4给定的条件下独立
(3)x1,x2,…,x7的联合分布:
在这里插入图片描述
贝叶斯网络的形式化定义
(1)BN(G, Θ \Theta Θ
a.G:有向无环图
b.G的结点:随机变量
c.G的边:结点间的有向依赖
d. Θ \Theta Θ:所有条件概率分布的参数集合
e.结点X的条件概率:P(X|parent(X))
P ( S , C , B , X , D ) = P ( S ) P ( C ∣ S ) P ( B ∣ S ) P ( X ∣ C , S ) P ( D ∣ C , B ) P(S,C,B,X,D)=P(S)P(C|S)P(B|S)P(X|C,S)P(D|C,B) P(S,C,B,X,D)=P(S)P(CS)P(BS)P(XC,S)P(DC,B)
(2)思考:需要多少参数才能确定上述网络呢?
a.每个结点所需参数的个数:结点的parent数目是M,结点和parent的可取值数目都是K: K M ∗ ( K − 1 ) K^{M*}(K-1) KM(K1)
b.为什么?
c.考察结点的parent对该结点形成了多少种情况(条件分布)
特殊的贝叶斯网络
在这里插入图片描述
(1)结点形成一条链式网络,称作马尔科夫模型
A i + 1 只 与 A i 有 关 , 与 A 1 , . . . , A i − 1 无 关 A_{i+1}只与A_i有关,与A_1,...,A_{i-1}无关 Ai+1AiA1,...,Ai1

通过贝叶斯网络判定条件独立-1
在这里插入图片描述

(1)根据图模型,得: P ( a , b , c ) = P ( c ) ∗ P ( a ∣ c ) ∗ P ( b ∣ c ) P(a,b,c)=P(c)*P(a|c)*P(b|c) P(a,b,c)=P(c)P(ac)P(bc)
(2)从而: P ( a , b , c ) / P ( c ) = P ( a ∣ c ) ∗ P ( b ∣ c ) P(a,b,c)/P(c)=P(a|c)*P(b|c) P(a,b,c)/P(c)=P(ac)P(bc)
(3)而, P ( a , b ∣ c ) = P ( a , b , c ) / P ( c ) P(a,b|c)=P(a,b,c)/P(c) P(a,bc)=P(a,b,c)/P(c)
(4)得: P ( a , b ∣ c ) = P ( a ∣ c ) ∗ P ( b ∣ c ) P(a,b|c)=P(a|c)*P(b|c) P(a,bc)=P(ac)P(bc)
(5)即:在c给定的条件下,a,b被阻断(blocked)是独立的

通过贝叶斯网络判定条件独立-2
(1) P ( a , b , c ) = P ( a ) ∗ P ( c ∣ a ) ∗ P ( b ∣ c ) P(a,b,c)=P(a)*P(c|a)*P(b|c) P(a,b,c)=P(a)P(ca)P(bc)
在这里插入图片描述
在这里插入图片描述
即:在c给定的条件下,a,b被阻断(blocked),是独立的
通过贝叶斯网络判定条件独立-3
在这里插入图片描述
在c未知的条件下,a,b被阻断(blocked),是独立的:head-to-head

HMM
在这里插入图片描述

(1)隐马尔科夫模型(HMM,Hidden Markov Model)可用于标注问题,在语音识别、NLP、生物信息、模式识别等领域被实践证明是有效的算法
(2)HMM是关于时序的概率模型,描述由一个隐藏的马尔科夫链随机生成不可观测的状态随机序列,再由各个状态生成一个观测而产生观测随机序列的过程
(3)隐马尔科夫模型随机生成的状态的序列,称为状态序列;每个状态生成一个观测,由此产生的观测随机序列,称为观测序列
a.序列的每个位置可看做是一个时刻
b.空间序列也可以使用该模型:如分析DNA

Markov Blanket
(1)一个结点的Markov Blanket是一个集合,在这个集合中的结点都在给定的条件下,该结点条件独立于其他所有结点
(2)即:一个结点的Markov Blanket 是它的parents,children以及spouses(孩子的其他parent)

贝叶斯网络的构建
(1)依次计算每个变量的D-separation的局部测试结果,综合每个结点得到贝叶斯网络
(2)算法过程:
a.选择变量的一个合理顺序: X 1 , X 2 , . . . , X n X_1,X_2,...,X_n X1,X2,...,Xn
b.对于i=1到n
在网络中添加 X i X_i Xi结点
X 1 , X 2 , . . . , X i − 1 X_1,X_2,...,X_{i-1} X1,X2,...,Xi1中选择 X i X_i Xi的父母,使得:
在这里插入图片描述

(3)这种构造方法,显然保证了全局的语义要求:
在这里插入图片描述
好吧,暂且到这里吧,迷迷糊糊懵懵懂懂

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值