EM算法(二)

(一)中我们谈到,如果带入样本分类的不确定性,我们要估计的(1)式就会变得相当复杂,为了绕开这个问题,靠的就是EM算法。

这里我决定倒着讲,可能更容易然大家理解。首先,说一下EM算法是怎么操作来让(4)式的最大值逼近(1)式的最大值的;接下来,会在几何的角度上证明我们的想法。最后,会把论文中提到的式子加以证明。

EM是怎么操作的?

E步:给定(第一次迭代时候可以随机给出初始值),令

M步:求解令(4)式最大的值。

如此循环,直到的值不再有太大的变化。

从几何角度讲,EM算法在做神马事情?

曲线1是(1)式的似然函数曲线。曲线2、3、4是(4)式可能的似然函数曲线。因为(1)式大于等于(4)式,所以曲线2、3、4一定在曲线1的下边。(4)式的曲线随着的取值的不同变换着位置。

那么EM算法每部发生了什么?当的时候,给定曲线2会和曲线1在A点相交(E步,后边会证明为什么在A点相交)。这时候求得曲线2最值B点对应的(M步)。这时候EM算法的第一次循环就做完了。然后在的基础上从新令,这时候曲线3会和曲线1相交在C点(E步),然后我们在求得曲线三的最值(M步)。如此循环,最终我们会走向曲线4,而这时候,曲线4的最值就是曲线1的最值,即满足了曲线4取得最值,也让曲线1取得最值。从路径上看,(4)式对应的似然函数曲线会沿着曲线1的边界不断的逼近曲线1的最值。

到这一步,各位会有的问题是,为什么会让两个曲线有一个交点,而且为什么每次迭代会毕竟真正的最值。

两个证明。

先说,什么时候(1)式和(4)式会相等。如果一个函数是严格的凸函数,回想Jensen不等式会在什么时候相等?只有自变量是常数的情况下才会相等。

那么就有(就是(4)式log函数的自变量),又因为,所以(简单推到下就可以得到结果了)。所以E步可以保证:(4)式和(1)式的曲线有一个交点。

那么,是不是每次跌倒后会有?也就是说,M步是否具有收敛性。

上图的从几何角度已经给出了一个很直接的答案,这里就不在赘述过程。有兴趣的朋友可以简单推到下。

时间: 2024-08-29 04:13:06

EM算法(二)的相关文章

EM算法(二)-算法初探

一.EM算法简介 在EM算法之一--问题引出中我们介绍了硬币的问题,给出了模型的目标函数,提到了这种含隐变量的极大似然估计要用EM算法解决,继而罗列了EM算法的简单过程,当然最后看到EM算法时内心是懵圈的,我们也简要的分析了一下,那回过头来,重新看下EM算法的简单介绍: 输入:观测变量数据Y,隐变量数据Z,联合分布$P(Y,Z|\theta)$,条件分布$P(Z|Y,\theta)$ 输出:模型参数$\theta$ (1)选择参数初值$\theta^{(0)}$,进行迭代: (2)E步:记$\t

从最大似然到EM算法浅解

原文在这里 机器学习十大算法之一:EM算法.能评得上十大之一,让人听起来觉得挺NB的.什么是NB啊,我们一般说某个人很NB,是因为他能解决一些别人解决不了的问题.神为什么是神,因为神能做很多人做不了的事.那么EM算法能解决什么问题呢?或者说EM算法是因为什么而来到这个世界上,还吸引了那么多世人的目光. 我希望自己能通俗地把它理解或者说明白,但是,EM这个问题感觉真的不太好用通俗的语言去说明白,因为它很简单,又很复杂.简单在于它的思想,简单在于其仅包含了两个步骤就能完成强大的功能,复杂在于它的数学

简单易学的机器学习算法——EM算法

一.机器学习中的參数预计问题 在前面的博文中,如"简单易学的机器学习算法--Logistic回归"中,採用了极大似然函数对其模型中的參数进行预计,简单来讲即对于一系列样本,Logistic回归问题属于监督型学习问题,样本中含有训练的特征 X_i" title="X_i" >以及标签.在Logistic回归的參数求解中.通过构造样本属于类别和类别的概率: 这样便能得到Logistic回归的属于不同类别的概率函数: 此时,使用极大似然预计便可以预计出模型

混合高斯模型(Mixtures of Gaussians)和EM算法

混合高斯模型(Mixtures of Gaussians)和EM算法 主要内容: 1. 概率论预备知识 2. 单高斯模型 3. 混合高斯模型 4. EM算法 5. K-means聚类算法 一.概率论预备知识 1. 数学期望/均值.方差/标准差 设离散型随机变量X的分布律为 则称为X的数学期望或均值 设连续型随机变量X的概率密度函数(pdf)为 则其数学期望定义为: 随机变量X的方差: 随机变量X的标准差: 2. 正态分布.协方差 正态分布: 概率密度函数: 设(X,Y)为二维随机变量,若存在,则

opencv3中的机器学习算法之:EM算法

不同于其它的机器学习模型,EM算法是一种非监督的学习算法,它的输入数据事先不需要进行标注.相反,该算法从给定的样本集中,能计算出高斯混和参数的最大似然估计.也能得到每个样本对应的标注值,类似于kmeans聚类(输入样本数据,输出样本数据的标注).实际上,高斯混和模型GMM和kmeans都是EM算法的应用. 在opencv3.0中,EM算法的函数是trainEM,函数原型为: bool trainEM(InputArray samples, OutputArray logLikelihoods=n

文本主题模型之LDA(三) LDA求解之变分推断EM算法

文本主题模型之LDA(一) LDA基础 文本主题模型之LDA(二) LDA求解之Gibbs采样算法 文本主题模型之LDA(三) LDA求解之变分推断EM算法 本文是LDA主题模型的第三篇,读这一篇之前建议先读文本主题模型之LDA(一) LDA基础,同时由于使用了EM算法,如果你对EM算法不熟悉,建议先熟悉EM算法的主要思想.LDA的变分推断EM算法求解,应用于Spark MLlib和Scikit-learn的LDA算法实现,因此值得好好理解. 1. 变分推断EM算法求解LDA的思路 首先,回顾L

转载:EM算法的最精辟讲解

机器学习十大算法之一:EM算法.能评得上十大之一,让人听起来觉得挺NB的.什么是NB啊,我们一般说某个人很NB,是因为他能解决一些别人解决不了的问题.神为什么是神,因为神能做很多人做不了的事.那么EM算法能解决什么问题呢?或者说EM算法是因为什么而来到这个世界上,还吸引了那么多世人的目光. 我希望自己能通俗地把它理解或者说明白,但是,EM这个问题感觉真的不太好用通俗的语言去说明白,因为它很简单,又很复杂.简单在于它的思想,简单在于其仅包含了两个步骤就能完成强大的功能,复杂在于它的数学推理涉及到比

猪猪的机器学习笔记(十四)EM算法

EM算法 作者:樱花猪   摘要: 本文为七月算法(julyedu.com)12月机器学习第十次次课在线笔记.EM算法全称为Expectation Maximization Algorithm,既最大期望算法.它是一种迭代的算法,用于含有隐变量的概率参数模型的最大似然估计和极大后验概率估计.EM算法经常用于机器学习和机器视觉的聚类领域,是一个非常重要的算法.而EM算法本身从使用上来讲并不算难,但是如果需要真正的理解则需要许多知识的相互串联. 引言:      EM算法是机器学习十大经典算法之一.

EM算法嗅探

一.前言 在统计计算中,最大期望(EM)算法是在概率模型中寻找参数最大似然估计或者最大后验估计的算法,其中概率模型依赖于无法观测的隐藏变量(Latent Variable).最大期望经常用在机器学习和计算机视觉的数据聚类(Data Clustering)领域. 最大期望算法经过两个步骤交替进行计算,第一步是计算期望(E),利用对隐藏变量的现有估计值,计算其最大似然估计值:第二步是最大化(M),最大化在 E 步上求得的最大似然值来计算参数的值.M步上找到的参数估计值被用于下一个 E 步计算中,这个