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最终迭代后的结果不一定就刚好满足最初设想的真实值,最终结果取决于初始化情况。

相关推荐
NAGNIP6 小时前
大模型框架性能优化策略:延迟、吞吐量与成本权衡
算法
美团技术团队7 小时前
LongCat-Flash:如何使用 SGLang 部署美团 Agentic 模型
人工智能·算法
Fanxt_Ja11 小时前
【LeetCode】算法详解#15 ---环形链表II
数据结构·算法·leetcode·链表
侃侃_天下11 小时前
最终的信号类
开发语言·c++·算法
茉莉玫瑰花茶12 小时前
算法 --- 字符串
算法
博笙困了12 小时前
AcWing学习——差分
c++·算法
NAGNIP12 小时前
认识 Unsloth 框架:大模型高效微调的利器
算法
NAGNIP12 小时前
大模型微调框架之LLaMA Factory
算法
echoarts12 小时前
Rayon Rust中的数据并行库入门教程
开发语言·其他·算法·rust
Python技术极客12 小时前
一款超好用的 Python 交互式可视化工具,强烈推荐~
算法