EM算法学习

1.EM算法的介绍


可以发现:计算出θA和θB的值的前提是知道A、B币种的抛掷情况。
所以我们需要使用EM算法:求出每轮选择硬币种类的概率

2.EM算法执行过程:

第一步:首先初始化设置一组PA和PB证明的值。然后通过最大似然估计得到每轮实验对于硬币种类的选择。【E步】

第二步:继续用最大似然估计,和第一步进行迭代。

首先得到标准答案:

然后随机初始化,进行假设第一轮是AorB:

得到第一轮PA正=0.005

然后假设第一轮的硬币是B,得到概率:0.03

可以得到:【这个过程就是E步】

得到隐变量的选择序列后,再根据这个序列重新计算PA和PB的结果**(M步:)**

然后E和M所对应的初始化值和估计值进行对比:

然后在第二轮迭代时,重选择使用的硬币

然后基于新的硬币序列重新计算PA和PB,会发现计算结果越来越接近真实的PA=0.4和PB=0.5

结论:

EM最终迭代后的结果不一定就刚好满足最初设想的真实值,最终结果取决于初始化情况。

相关推荐
Orange--Lin33 分钟前
【用deepseek和chatgpt做算法竞赛】——还得DeepSeek来 -Minimum Cost Trees_5
人工智能·算法·chatgpt
01_41 分钟前
力扣hot100 ——搜索二维矩阵 || m+n复杂度优化解法
算法·leetcode·矩阵
SylviaW0843 分钟前
python-leetcode 35.二叉树的中序遍历
算法·leetcode·职场和发展
篮l球场44 分钟前
LeetCodehot 力扣热题100
算法·leetcode·职场和发展
pzx_0011 小时前
【机器学习】K折交叉验证(K-Fold Cross-Validation)
人工智能·深度学习·算法·机器学习
BanLul1 小时前
进程与线程 (三)——线程间通信
c语言·开发语言·算法
qy发大财1 小时前
分发糖果(力扣135)
数据结构·算法·leetcode
陈无左耳、1 小时前
HarmonyOS学习第4天: DevEco Studio初体验
学习·华为·harmonyos
挣扎与觉醒中的技术人2 小时前
网络安全入门持续学习与进阶路径(一)
网络·c++·学习·程序人生·安全·web安全
haaaaaaarry2 小时前
【分治法】线性时间选择问题
数据结构·算法