机器学习-最大期望算法-EM-13-灵析社区

搜不鸟了

1、EM概念

EM 算法,全称 Expectation Maximization Algorithm。期望最大算法是一种无监督分类算法,用于含有隐变量(Hidden Variable)的概率参数模型的最大似然估计或极大后验概率估计。

EM 算法的核心思想非常简单,分为两步:Expection-Step 和 Maximization-Step。E-Step 主要通过观察数据和现有模型来估计参数,然后用这个估计的参数值来计算似然函数的期望值;而 M-Step 是寻找似然函数最大化时对应的参数。由于算法会保证在每次迭代之后似然函数都会增加,所以函数最终会收敛。

2、算法原理

通过不断迭代这个E-M步骤,P、Q就能收敛。

3、案例

假设有两枚硬币 A 和 B,他们的随机抛掷的结果如下图所示:

我们很容易估计出两枚硬币抛出正面的概率:

notion image

现在我们加入隐变量,抹去每轮投掷的硬币标记:

3.1 计算

从期望的角度来看,对于第一轮抛掷,使用硬币 A 的概率是 0.45,使用硬币 B 的概率是 0.55。同理其他轮。这一步我们实际上是估计出了 Z 的概率分布,这部就是 E-Step。

结合硬币 A 的概率和上一张投掷结果,我们利用期望可以求出硬币 A 和硬币 B 的贡献。以第二轮硬币 A 为例子,计算方式为:

notion image

于是我们可以得到:

这步就对应了 M-Step,重新估计出了参数值。

如此反复迭代,我们就可以算出最终的参数值。

上述讲解对应下图:


阅读量:2013

点赞量:0

收藏量:0