用EM算法进行简单贝叶斯网络的参数学习(python程序)

用EM算法进行贝叶斯网络的条件参数学习,建立一个简单的网络,网络来源西瓜书,我把模型简化了,只有3个特征。
在这里插入图片描述
其中色泽属性可取值为青绿1,乌黑2,浅白3;根蒂取值为蜷缩1,稍蜷2,硬挺3;敲声浊响1,沉闷2,清脆3;好瓜1,坏瓜2;数字是为了输入样本数据用的。
现在用EM算法进行网络的条件参数学习,先简单介绍一下EM算法。
概念:
EM算法即最大期望算法,是一类通过迭代进行极大似然估计的优化算法,用于对包含隐变量或缺失数据的概率模型进行参数估计。
与极大似然估计关系:
极大似然估计是对服从已知分布的未知参数进行估计。例如已知100个人里女性有50人,男性有50人,男女身高都服从正态分布,则我们可以通过极大似然估计来估计男女身高的正态分布参数。极大似然估计适用于解决参数未知的样本。
而EM算法是用来解决包含隐变量和未知参数的样本。例如,在100人中,有男女各50人,我们拥有100个人的身高数据,确不知道这100人里每个人是男生还是女生。即样本的类别是未知的。
EM算法的数据集组成为:观测数据X = (x1,…, xn)+隐含变量Z = (z1,…, zn)=完整数据Y = ((x1, z1),…, (xn, zn))
EM算法计算流程就是:
总结EM流程:
&#x

评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值