美文网首页
EM算法-引入

EM算法-引入

作者: ltochange | 来源:发表于2021-06-10 23:31 被阅读0次

期望极大(EM)算法:是一种迭代算法,用于含有隐变量(latent variable)的概率模型参数的极大似然估计或者极大后验概率估计。EM算法每次迭代有两步组成:E步求期望;M步求极大。

三硬币模型

有A,B,C 三个硬币,抛硬币C决定使用A或B,然后抛A或者B决定正反面, 根据多次抛硬币正反面的结果,估算3个硬币的正反面概率值p,q,\pi

当隐变量C存在时, 无法直接使用极大似然估计求得概率值。

三硬币模型

何时使用EM算法

论文What is the expectation maximization algorithm? 对比了直接极大似然估计和EM算法的适用场景,如下图所示

极大似然估计
EM算法

上图做了五组实验,每组使用相同的硬币,进行十次实验,H代表正面,T代表反面。a,b两图实验结果一样,不同的是,a图随机选择使用A或B硬币,b图根据硬币C的结果选择使用A或B硬币。

对于a图,没有硬币C的存在,直接使用极大似然估计,得到硬币A,B的概率估计值 p =\hat{\theta}_{A}q =\hat{\theta}_{B}

对于b图,因为硬币C(隐变量)的存在,使用EM算法,首先设定\hat{\theta}_{A}\hat{\theta}_{B}的初值,E步求期望。硬币C抛出正面的概率为\pi,即选择硬币A的概率,抛出反面的概率为1-\pi,即选择硬币B的概率,图中初始化了五组取值 (0.45, 0.55), (0.80, 0.20), (0.73, 0.27), (0.35, 0.65), (0.65, 0.35)。根据初始化的\pi和实验结果,求得期望。然后再求极大,得到第一次迭代之后的 \hat{\theta}_{A}^{(1)}\hat{\theta}_{B}^{(1)}

这里仅仅给出了和直接极大似然求解的区别,实际情况下,求极大并更新参数时,也要对参数\pi更新。

EM算法求解三硬币模型问题

  1. 初始化参数 \theta^{(0)}=\left(\pi^{(0)}, p^{(0)}, q^{(0)}\right)

  2. 假设第i次迭代得到的参数为 \theta^{(i)}=\left(\pi^{(i)}, p^{(i)}, q^{(i)}\right)

  3. E步:计算在参数模型(\pi^{(i)}, p^{(i)}, q^{(i)}下,观测数据y来在硬币A的概率
    \mu_{j}^{(i+1)}=\frac{\pi^{(i)}\left(p^{(i)}\right)^{y_{j}}\left(1-p^{(i)}\right)^{1-y_{j}}}{\pi^{(i)}\left(p^{(i)}\right)^{y_{j}}\left(1-p^{(i)}\right)^{1-y_{j}}+\left(1-\pi^{(i)}\right)\left(q^{(i)}\right)^{y_{j}}\left(1-q^{(i)}\right)^{1-y_{j}}}

  4. M步:计算参数的新估计值
    \pi^{(i+1)}=\frac{1}{n} \sum_{j=1}^{n} \mu_{j}^{(i+1)} \\ p^{(i+1)}=\frac{\sum_{j=1}^{n} \mu_{j}^{(i+1)} y_{j}}{\sum_{j=1}^{n} \mu_{j}^{(i+1)}} \\ q^{(i+1)}=\frac{\sum_{j=1}^{n} (1-\mu_{j}^{(i+1)}) y_{j}}{\sum_{j=1}^{n}(1-\mu_{j}^{(i+1)})}

  5. 重复3,4,直到收敛

那么,为什么EM算法可以收敛呢?这样求解有什么依据呢?

相关文章

  • EM算法-引入

    期望极大(EM)算法:是一种迭代算法,用于含有隐变量(latent variable)的概率模型参数的极大似然估计...

  • EM算法和变分推断

    EM算法和变分推断 EM算法 EM算法的引入: 当概率模型的变量都是观测变量时,给定数据,可以直接用极大似然估计或...

  • EM 算法

    参考: 从最大似然到EM算法浅解 (EM算法)The EM Algorithm EM算法及其推广学习笔记 EM算法...

  • EM算法

    问题 1. 什么是EM 2. EM算法流程是怎么样的 3. EM算法的优缺点 1. EM算法介绍 EM算法...

  • 04 EM算法 - EM算法收敛证明

    03 EM算法 - EM算法流程和直观案例 八、EM算法收敛证明 EM算法的收敛性只要我们能够证明对数似然函数的值...

  • 01 EM算法 - 大纲 - 最大似然估计(MLE)、贝叶斯算法

    EM算法的讲解的内容包括以下几个方面: 1、最大似然估计2、K-means算法3、EM算法4、GMM算法 EM算法...

  • EM算法

    EM算法 EM算法基本思想 ​ 最大期望算法(Expectation-Maximization algorit...

  • 机器学习(十):EM算法与GMM算法原理及案例分析

    一、简介 EM算法 最大期望算法(Expectation-maximization algorithm,简称EM,...

  • 2019-02-22-方法

    1.EM算法 (1)从最大似然到EM算法浅解

  • R语言中EM算法估计高斯混合模型参数

    EM算法 leengsmile2016年9月24日 EM 算法 本文档介绍如何在R语言中,通过EM算法,估计高斯混...

网友评论

      本文标题:EM算法-引入

      本文链接:https://www.haomeiwen.com/subject/lafmeltx.html