贝叶斯网络(2)- EM协同计算

本文深入探讨了期望最大化(EM)算法的基础知识及其应用,包括解决鸡和蛋问题的高斯混合模型(GMM)示例,以及EM算法在处理具有相关性和缺失值的数据集中的优势。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

本文内容主要总结自coursera课程Bayesian Methods for Machine Learning

本文内容延续自《贝叶斯网络(1)- 基础概念》
https://blog.youkuaiyun.com/qq_36080693/article/details/80160852

一、基础知识

1、Expectation Maximization

鸡和蛋问题(以高斯混合分布为例)

(1)如果我们有了每一个高斯分布的参数,那么我们就可以计算出,训练集X最大概率属于哪一个分布
这里写图片描述

(2)如果我们知道训练集X分别属于哪一个分布,那么我们就可以计算出每一个高斯分布的参数
这里写图片描述

鸡和蛋的问题,让我想到了推荐算法,那么同样的,我们引入了协同算法

2、协同算法

协同算法的计算过程,总体来说是一个找到一个虚拟变量分布,逐渐拟合实际变量分布的某一部分特征的过程
这里写图片描述

(1)E-step:找到最佳的虚拟变量分布
在这一步,重点是通过已有的相关系数矩阵(虚拟变量和实际变量之间),以及原虚拟变量分布参数,计算出更合适的虚拟变量分布参数。(先计算X的分布概率q,再根据X的分布概率计算虚拟变量分布)
这里写图片描述

(2)M-step:找到最佳的相关系数矩阵
根据新的虚拟变量分布参数,计算出更合适的最佳相关系数矩阵。
这里写图片描述

3、相对熵

相对熵(relative entropy)又称为KL散度(Kullback–Leibler divergence,简称KLD),对于连续的随机变量,定义为:相对熵是两个概率分布差别的非对称性的度量。

计算两个正态分布的相对熵,体会一下:
这里写图片描述

4、更普遍的版本

EM协同算法版本如下:
1、计算每一个X属于哪一个分布的概率;虚拟变量分布q为实际变量分布p的共轭分布
2、按图示公式计算得到相关系数矩阵
这里写图片描述

3、和GMM的对比
这里写图片描述

5、GMM代码实例

https://github.com/MaxPoon/coursera-Advanced-Machine-Learning-specialization/blob/master/Bayesian-Methods-For-Machine-Learning/week2/assignment/Coursera-BMML-week-2.ipynb

6、什么时候需要使用EM算法

1、各变量之间具有相关性
2、变量具有很多缺失值需要处理
3、可以在过程中拟合一些复杂的变量限制条件
4、PCA和Kmeans都属于特殊的EM计算

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值