经典机器学习模型(九)EM算法的推导

经典机器学习模型(九)EM算法的推导

1 相关数据基础

1.1 数学期望

1.1.1 数学期望的定义

在这里插入图片描述

根据定义,我们可以求得掷骰子对应的期望:
E ( X ) = X 1 ∗ p ( X 1 ) + X 2 ∗ p ( X 2 ) + . . . + X 6 ∗ p ( X 6 ) = 1 ∗ 1 6 + 2 ∗ 1 6 + 1 ∗ 1 6 + 3 ∗ 1 6 + 4 ∗ 1 6 + 5 ∗ 1 6 + 6 ∗ 1 6 = 3.5 E(X)=X_1*p(X_1)+X_2*p(X_2)+...+X_6*p(X_6)\\ =1*\frac{1}{6}+2*\frac{1}{6}+1*\frac{1}{6}+3*\frac{1}{6}+4*\frac{1}{6}+5*\frac{1}{6}+6*\frac{1}{6}\\ =3.5 E(X)=X1p(X1)+X2p(X2)+...+X6p(X6)=161+261+161+361+461+561+661=3.5

  • 要注意区分平均值和期望。平均值是一个统计量(对观察样本的统计),期望是一种概率论概念,是一个数学特征。比如我们进行掷骰子,掷了六次,点数分别为2,2,2,4,4,4,这六次的观察就是我们的样本,于是我们可以说平均值为(2+2+2+4+4+4)/6=3,但是千万不能说期望是3。
  • 平均值和期望的联系也是大数定理联系起来的。如果说概率是频率随样本趋于无穷的极限 ,期望就是平均数随样本趋于无穷的极限。
  • 可以用加权平均值来理解期望。

1.1.2 函数期望公式

在这里插入图片描述

1.1.3 常见分布的期望

在这里插入图片描述

具体推导可以参考:

数学期望及常见分布的期望计算与推导

1.2 极大似然估计

  • 极大似然估计法的出发点是已知被观测对象的分布,但不知道其参数。
  • 极大似然法用得到观测值(样本)最高概率的那些参数的值来估计该分布的参数,即产生该样本概率最大的原则
  • f ( y , θ ) f(y,θ) f(y,θ) 是随机变量 Y Y Y 的密度函数,其中 θ θ θ是该分布的未知参数,若有一随机样本 Y 1 , Y 2 , ⋯ , Y n Y_1,Y_2,⋯,Y_n Y1,Y2,,Yn,则 θ θ θ的极大似然估计值是具有产生该观测样本的最高概率的那个 θ θ θ值,或者换句话说, θ θ θ的极大似然估计值是使密度函数 f ( y , θ ) f(y,θ) f(y,θ) 达到最大的 θ θ θ值。
  • 由于总体有离散型和连续型两种分,离散型分布通过分布律来构造似然函数,而连续型分布通过概率密度函数来构造似然函数

求解极大似然估计问题步骤:

  1. 写出似然函数;
  2. 对似然函数取对数,并整理;
  3. 求导数,令导数为0,得到似然方程;
  4. 解似然方程,得到的参数即为所求;

1.2.1 离散型随机变量的极大似然原理

  • 若总体为离散型分布,其分布律为 P ( Y = y ) = p ( y , θ ) P(Y=y)=p(y,θ) P(Y=y)=p(y,θ),分布律的形式已知。
    • 其中, θ ^ = ( θ 1 , θ 2 , ⋯ , θ k ) ′ \hat\theta=(θ_1,θ_2,⋯,θ_k)′ θ^=(θ1,θ2,,θk) 是待估参数向量
    • 其中一维随机变量离散型分布主要有:

在这里插入图片描述

Y 1 , Y 2 , ⋯ , Y n Y_1,Y_2,⋯,Y_n Y1,Y2,,Yn 表示总体 Y Y Y 的一个样本,它们独立同分布。 y 1 , y 2 , ⋯ , y n y_1,y_2,⋯,y_n y1,y2,,yn 是相应于样本 Y 1 , Y 2 , ⋯ , Y n Y_1,Y_2,⋯,Y_n Y1,Y2,,Yn 的一组样本值,容易求得从 Y 1 , Y 2 , ⋯ , Y n Y_1,Y_2,⋯,Y_n Y1,Y2,,Yn 取到观察值$ y_1,y_2,⋯,y_n$ 的概率,即事件 { Y 1 = y 1 , Y 2 = y 2 , ⋯ , Y n = y n Y_1=y_1,Y_2=y_2,⋯,Y_n=y_n Y1=y1,Y2=y2,,Yn=yn}发生的概率,这个概率为
L ( θ ^ ) = L ( y 1 , y 2 , . . . , y n ; θ ^ ) = ∏ i = 1 n p ( y i , θ ^ ) L(\hat\theta) = L(y_1,y_2,...,y_n;\hat\theta)=\prod\limits_{i=1}^{n}p(y_i,\hat\theta) L(θ^)=L(y1,y2,...,yn;θ^)=i=1np(yi,θ^)

  • 这一概率随 θ ^ \hat\theta θ^的取值而变化,它是 θ ^ \hat\theta θ^的函数,$L(\hat\theta) $称为样本的似然函数。

  • 极大似然估计法就是在 θ ^ \hat\theta θ^取值的可能范围内挑选使似然函数 L ( y 1 , y 2 , ⋯ , y n ; θ ^ ) L(y_1,y_2,⋯,y_n;\hat\theta) L(y1,y2,,yn;θ^) 达到最大的参数值 θ ^ \hat\theta θ^

  • 一般求解的步骤就是:对该似然函数取对数,然后求导数,令导数为0,得到似然方程,最后解似然方程。取对数是因为对数似然函 l n L ( θ ^ ) lnL(\hat\theta) lnL(θ^) 可以把乘积形式转为和的形式,从而为简化运算提供了方便。

1.2.2 离散型分布的极大似然估计的举例

首先来看1次抛硬币,假设参数正面向上的概率为 θ θ θ,满足伯努利分布(也称0-1分布),可能的事件有2个(正面向上的次数可能为0、1次),其正面的条件概率为:
p ( x ) = θ x ( 1 − θ ) 1 − x , x 为正面向上的次数 p(x)=\theta^x(1-\theta)^{1-x},x为正面向上的次数 p(x)=θx(1θ)1x,x为正面向上的次数
现在我们朝空中扔 N N N次,其中有 x x x次显示的是正面,有 N − x N-x Nx次显示的是反面,那么它所对应的**「正面的条件概率」**就可以写成下式(满足二项分布):
P ( x ∣ θ ) = C N x θ x ( 1 − θ ) N − x , x 为正面向上的次数 P(x|\theta)=C_{N}^x\theta^x(1-\theta)^{N-x},x为正面向上的次数 P(xθ)=CNxθx(1θ)Nx,x为正面向上的次数

现在,我们已经知道硬币正面向上的概率 θ θ θ、一共抛了 N N N次, x x x次显示的是正面,那么代入上式,很容易就能求出该次事件出现的概率。

假如,现在知道硬币一共抛了 N N N次, x x x次显示的是正面,但是不知道硬币朝上的概率 θ \theta θ,那么该怎么办呢?这时,咱们就可以让条件概率最大化来找到对应的 θ \theta θ,即
a r g max ⁡ θ P ( x ∣ θ ) arg \max \limits_{\theta} P(x|\theta) argθmaxP(xθ)
此时,我们可以把它写成似然函数的形式 L ( θ ) L(\theta) L(θ),当然,由于原来的条件概率函数都是指数乘积的形式,为了计算方便,我们接着把似然函数写成 【对数似然函数】
θ ^ = a r g max ⁡ θ l n ( L ( θ ) ) = a r g max ⁡ θ l n ( θ x ( 1 − θ ) N − x ) ( 忽略常数项 ) = a r g max ⁡ θ ( x l n θ + ( N − x ) l n ( 1 − θ ) ) 求最大值,我们对 θ 求导,并令其为 0 ,那么 ∂ L ( θ ) ∂ θ = ∂ ( x l n θ + ( N − x ) l n ( 1 − θ ) ) ∂ θ = x θ − N − x 1 − θ = 0 可以求得 θ = x N \hat\theta = arg \max \limits_{\theta} ln(L(\theta)) \\ =arg \max \limits_{\theta} ln(\theta^x(1-\theta)^{N-x})(忽略常数项) \\ =arg \max \limits_{\theta} (xln\theta + (N-x)ln(1-\theta)) \\ 求最大值,我们对\theta求导,并令其为0,那么\\ \frac{\partial L(\theta)}{\partial\theta}=\frac{\partial (xln\theta + (N-x)ln(1-\theta))}{\partial\theta}=\frac{x}{\theta}-\frac{N-x}{1-\theta}=0 \\ 可以求得\theta=\frac{x}{N} θ^=argθmaxln(L(θ))=argθmaxln(θx(1θ)Nx)(忽略常数项)=argθmax(xlnθ+(Nx)ln(1θ))求最大值,我们对θ求导,并令其为0,那么θL(θ)=θ(xlnθ+(Nx)ln(1θ))=θx1θNx=0可以求得θ=Nx

  • 频率学派相信概率是确定的,或者说, θ θ θ是个常量,采样数据 x x x则是基于这个参数为 θ θ θ的分布中随机采样的,因此通过采样数据可以求得 θ θ θ(通过极大似然估计MLE),而采样数据越多, θ θ θ越准确。

  • 而贝叶斯学派则认为θ并非是个未知的常量,而是个满足某种分布的随机变量,而对于这个θ,会有一个最初始的信仰,即一个先验假设(比如抛硬币中,θ可以被视为一个均值为0.5的正态分布)。

  • 具体可参考:概率学派和贝叶斯学派的区别

  • 可以看出,极大似然估计可以看成是对应于一组完全数据的情况,但是当出现不完全的数据时,比如未被观测到或者是缺失的数据时,这时用极大似然估计来求解就相当复杂了。

1.2.3 连续型随机变量的极大似然原理

若总体为连续型分布,其概率密度函数为 f ( y , θ ^ ) f(y,\hat\theta) f(y,θ^),密度函数的形式已知。

  • 其中, θ ^ = ( θ 1 , θ 2 , ⋯ , θ k ) ′ \hat\theta=(θ_1,θ_2,⋯,θ_k)′ θ^=(θ1,θ2,,θk) 是待估参数向量
  • 其中一维随机变量连续型分布主要有:

在这里插入图片描述
在这里插入图片描述

解法和离散型分布一致,对该似然函数取对数,然后求导数,令导数为0,得到似然方程,最后解似然方程。

1.2.4 连续型分布的极大似然估计举例

我们假设样本服从高斯分布:

在这里插入图片描述

1.3 Jensen不等式

  • 这里简单介绍下结论,感兴趣的可以详细了解下该不等式。

  • 如果 f f f凸函数(如下图),X是随机变量,那么有 E [ f ( X ) ] > = f ( E [ X ] ) E[f(X)]>=f(E[X]) E[f(X)]>=f(E[X]),也就是函数的期望大于等于期望的函数

  • 对于凹函数,不等号方向反向,即 E [ f ( X ) ] < = f ( E [ X ] ) E[f(X)]<=f(E[X]) E[f(X)]<=f(E[X])

在这里插入图片描述

2 EM算法举例

如下图,我们抛两枚硬币A和B,一共抛了5轮,每轮抛10次。

如果知道每次抛的是A还是B,那么根据之前讲的极大似然估计,就直接可以估计每种硬币的参数 θ A , θ B θ_A,θ_B θA,θB(正面朝上的概率)。

在这里插入图片描述

假如此时我们并不知道每轮抛掷的是A硬币还是B硬币,只能知道每组实验的10次结果。这时候,我们就需要EM算法了,这时每组未知的硬币就是隐变量

  • EM算法的核心就是猜数+迭代

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

在这里插入图片描述

到隐变量 z z z后(即每轮是A硬币,还是B硬币),我们可以去进行M步计算极大似然估计求得更好的θ

在这里插入图片描述

3 EM算法的推导

3.1 EM算法流程

我们先看下《统计学习方法》中EM算法的流程,然后我们再去进行推导。

在这里插入图片描述

3.2 EM算法中E步的推导

m m m个样本观察数据 y = ( y ( 1 ) , y ( 2 ) , . . . y ( m ) ) y=(y^{(1)},y^{(2)},...y^{(m)}) y=(y(1),y(2),...y(m))中,找出样本的模型参数θ,最大化模型分布的对数似然函数如下:
θ ^ = a r g max ⁡ θ l o g ( L ( θ ) ) = a r g max ⁡ θ ∑ i = 1 m l o g ( P ( y i ∣ θ ) ) = a r g max ⁡ θ l o g ( P ( Y ∣ θ ) ) 它表示参数 θ 的条件下对应的观测变量 Y 的概率对数化 Y 是离散变量时,对应的是概率 ; Y 是连续变量,对应的是概率密度。 后文以概率为代表解释,概率密度类似。 \hat\theta = arg \max \limits_{\theta} log(L(\theta)) \\ = arg \max \limits_{\theta} \sum\limits_{i=1}^m log(P(y^{i}|\theta)) \\ = arg \max \limits_{\theta} log(P(Y|\theta)) \\ 它表示参数\theta的条件下对应的观测变量Y的概率对数化 \\ Y是离散变量时,对应的是概率;Y是连续变量,对应的是概率密度。 \\ 后文以概率为代表解释,概率密度类似。\\ θ^=argθmaxlog(L(θ))=argθmaxi=1mlog(P(yiθ))=argθmaxlog(P(Yθ))它表示参数θ的条件下对应的观测变量Y的概率对数化Y是离散变量时,对应的是概率;Y是连续变量,对应的是概率密度。后文以概率为代表解释,概率密度类似。

1)因为这里包含缺失数据和隐变量,无法直接得到对应的概率,于是把对应的隐变量 Z Z Z添进来,以全概率公式展开。
L ( θ ) = l o g ( P ( Y ∣ θ ) ) = l o g ∑ Z ( P ( Y , Z ∣ θ ) ) 这里的隐变量 Z 是对样本空间的分割,就是在 Z 的所有取值下对应的概率。 L(\theta)=log(P(Y|\theta))=log\sum\limits_{Z}(P(Y,Z|\theta))\\ 这里的隐变量Z是对样本空间的分割,就是在Z的所有取值下对应的概率。 L(θ)=log(P(Yθ))=logZ(P(Y,Zθ))这里的隐变量Z是对样本空间的分割,就是在Z的所有取值下对应的概率。
2)接下来,我们就要用到极大似然估计的思想了。

我们令每次迭代后的 L ( θ ) L(\theta) L(θ)都比上轮的 L ( θ ( i ) ) L(\theta^{(i)}) L(θ(i))大,目的就是为了让更新之后的似然函数更大,即:
L ( θ ) − L ( θ ( i ) ) = l o g ∑ Z ( P ( Y , Z ∣ θ ) ) − l o g ( P ( Y ∣ θ ( i ) ) ) ≥ 0 注意:上式中 θ ( i ) 已知 ( 上一轮推测出来的 ) , θ 是未知的 L(\theta)-L(\theta^{(i)})=log\sum\limits_{Z}(P(Y,Z|\theta))-log(P(Y|\theta^{(i)}))\geq0\\ 注意:上式中\theta^{(i)}已知(上一轮推测出来的),\theta是未知的 L(θ)L(θ(i))=logZ(P(Y,Zθ))log(P(Yθ(i)))0注意:上式中θ(i)已知(上一轮推测出来的)θ是未知的

  • 等号右侧前面的式子是将所有隐变量考虑在内的全概率密度函数,也就是在EM例子中,既然不知道每轮是A硬币还是B硬币,那就把A和B的概率都分别计算出来。
  • 而后面的式子中,参数 θ ( i ) \theta^{(i)} θ(i)是根据上轮结果推测出来A硬币/B硬币正面朝上的概率,我们认为它是已知的,目标就是用它来推测出新的一轮隐变量对应的概率,并且找到新一轮的似然函数。

3)接着,用贝叶斯公式,来把前面的式子进行改造,通过观测结果 Y Y Y上一轮的参数 θ ( i ) \theta^{(i)} θ(i)去猜出隐变量 对应的概率 Z Z Z,将,上式就可以继续写成:
L ( θ ) − L ( θ ( i ) ) = l o g ∑ Z ( P ( Y , Z ∣ θ ) ) − l o g ( P ( Y ∣ θ ( i ) ) ) = l o g ∑ Z [ P ( Z ∣ Y , θ ( i ) ) P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ] − l o g ( P ( Y ∣ θ ( i ) ) ) 分子分母同乘以一个数,原式保持不变,这样就引入了隐变量 z 的概率分布。 另外对数函数中有一个求和式,直接计算是十分复杂的。 L(\theta)-L(\theta^{(i)})=log\sum\limits_{Z}(P(Y,Z|\theta))-log(P(Y|\theta^{(i)}))\\ =log\sum\limits_{Z}[P(Z|Y,\theta^{(i)})\frac{P(Y,Z|\theta)}{P(Z|Y,\theta^{(i)}}]-log(P(Y|\theta^{(i)})) \\ 分子分母同乘以一个数,原式保持不变,这样就引入了隐变量z的概率分布。 \\另外对数函数中有一个求和式,直接计算是十分复杂的。 L(θ)L(θ(i))=logZ(P(Y,Zθ))log(P(Yθ(i)))=logZ[P(ZY,θ(i))P(ZY,θ(i)P(Y,Zθ)]log(P(Yθ(i)))分子分母同乘以一个数,原式保持不变,这样就引入了隐变量z的概率分布。另外对数函数中有一个求和式,直接计算是十分复杂的。

4)此时,我们需要借助Jensen不等式了。

我们已经知道,期望 E ( X ) = ∑ x p ( x ) E(X)=\sum xp(x) E(X)=xp(x),函数期望则为: E ( f ( x ) ) = ∑ f ( x ) p ( x ) E(f(x))=\sum f(x)p(x) E(f(x))=f(x)p(x)

∑ Z P ( Z ∣ Y , θ ( i ) ) = 1 \sum\limits_{Z}P(Z|Y,\theta^{(i)})=1 ZP(ZY,θ(i))=1,这是因变量 z z z的概率分布,相当于上式的 p ( x ) p(x) p(x)

我们 P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) \frac{P(Y,Z|\theta)}{P(Z|Y,\theta^{(i)})} P(ZY,θ(i))P(Y,Zθ)把看作一个整体,相当于上式中的 f ( x ) f(x) f(x),因此 ∑ Z [ P ( Z ∣ Y , θ ( i ) ) P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) ] \sum\limits_{Z}[P(Z|Y,\theta^{(i)})\frac{P(Y,Z|\theta)}{P(Z|Y,\theta^{(i)})}] Z[P(ZY,θ(i))P(ZY,θ(i))P(Y,Zθ)]可以看作一个期望。

根据Jensen不等式,对于凸函数,函数的期望大于等于期望的函数;凹函数相反

l o g ∑ Z [ P ( Z ∣ Y , θ ( i ) ) P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ] log\sum\limits_{Z}[P(Z|Y,\theta^{(i)})\frac{P(Y,Z|\theta)}{P(Z|Y,\theta^{(i)}}] logZ[P(ZY,θ(i))P(ZY,θ(i)P(Y,Zθ)]就是期望的函数,此函数为log,而log属于凹函数,取相反结论,因此函数的期望小于等于期望的函数

我们可以得到下式:
L ( θ ) − L ( θ ( i ) ) = l o g ∑ Z ( P ( Y , Z ∣ θ ) ) − l o g ( P ( Y ∣ θ ( i ) ) ) = l o g ∑ Z [ P ( Z ∣ Y , θ ( i ) ) P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) ] − l o g ( P ( Y ∣ θ ( i ) ) ) ≥ ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) − l o g ( P ( Y ∣ θ ( i ) ) ) 由于 ∑ Z P ( Z ∣ Y , θ ( i ) ) = 1 ,因此在 l o g ( P ( Y ∣ θ ( i ) ) ) 中可以乘 ∑ Z P ( Z ∣ Y , θ ( i ) ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) − ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g ( P ( Y ∣ θ ( i ) ) ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Z ∣ Y , θ ( i ) ) ( P ( Y ∣ θ ( i ) ) ) 接着,对分母的式子进行简化,根据乘法公式 P ( Z ∣ Y , θ ( i ) ) P ( Y ∣ θ ( i ) ) = P ( Y , Z ∣ θ ( i ) ) ,它可以继续写成 = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) ≥ 0 L(\theta)-L(\theta^{(i)})=log\sum\limits_{Z}(P(Y,Z|\theta))-log(P(Y|\theta^{(i)}))\\ =log\sum\limits_{Z}[P(Z|Y,\theta^{(i)})\frac{P(Y,Z|\theta)}{P(Z|Y,\theta^{(i)})}]-log(P(Y|\theta^{(i)})) \\ \geq \sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Z|Y,\theta^{(i)})}-log(P(Y|\theta^{(i)}))\\ 由于\sum\limits_{Z}P(Z|Y,\theta^{(i)})=1,因此在log(P(Y|\theta^{(i)}))中可以乘\sum\limits_{Z}P(Z|Y,\theta^{(i)})\\ =\sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Z|Y,\theta^{(i)})}-\sum\limits_{Z}P(Z|Y,\theta^{(i)})log(P(Y|\theta^{(i)}))\\ =\sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Z|Y,\theta^{(i)})(P(Y|\theta^{(i)}))}\\ 接着,对分母的式子进行简化,根据乘法公式P(Z|Y,\theta^{(i)})P(Y|\theta^{(i)})=P(Y,Z|\theta^{(i)}),它可以继续写成\\ =\sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})}\\ \geq0 L(θ)L(θ(i))=logZ(P(Y,Zθ))log(P(Yθ(i)))=logZ[P(ZY,θ(i))P(ZY,θ(i))P(Y,Zθ)]log(P(Yθ(i)))ZP(ZY,θ(i))logP(ZY,θ(i))P(Y,Zθ)log(P(Yθ(i)))由于ZP(ZY,θ(i))=1,因此在log(P(Yθ(i)))中可以乘ZP(ZY,θ(i))=ZP(ZY,θ(i))logP(ZY,θ(i))P(Y,Zθ)ZP(ZY,θ(i))log(P(Yθ(i)))=ZP(ZY,θ(i))logP(ZY,θ(i))(P(Yθ(i)))P(Y,Zθ)接着,对分母的式子进行简化,根据乘法公式P(ZY,θ(i))P(Yθ(i))=P(Y,Zθ(i)),它可以继续写成=ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ)0
5)可以看出,对数中的分子是在未知参数 θ \theta θ下的联合概率,而分母是在已知参数 θ ( i ) \theta^{(i)} θ(i)的联合概率,都是完全概率,我们的目的是为了让每轮迭代后的概率比上轮的大,自然写成:
∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) ≥ 0 \sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})}\geq0 ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ)0
到这一步,我们的似然函数基本上就敲定了。

我们来验证下:令似然函数最大就意味着令每轮迭代后的隐变量概率都比上轮大。

很简单,只要对数部分大于零,不等式自然成立,也就是对数里面的部分大于等于1,继续写成
P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) ≥ 1 \frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})}\geq1 P(Y,Zθ(i))P(Y,Zθ)1
验证了每轮迭代的概率都比上轮大,等同于令似然函数越来越大。

6)接着,我们的目标就是要求出对应似然函数下的缺失变量 θ \theta θ的概率值。
我们已经知道 L ( θ ) − L ( θ ( i ) ) ≥ ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) 即 L ( θ ) ≥ L ( θ ( i ) ) + ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) 我们令 L ( θ ) 的下界 B ( θ , θ ( i ) ) = L ( θ ( i ) ) + ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) 我们极大化似然函数 L ( θ ) 等同于最大化下界 B ( θ , θ ( i ) ) 而 L ( θ ( i ) ) 为常数,就等同于最大化 ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) 我们已经知道L(\theta)-L(\theta^{(i)})\geq\sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})} \\ 即L(\theta) \geq L(\theta^{(i)}) + \sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})}\\ 我们令L(\theta)的下界B(\theta,\theta^{(i)})=L(\theta^{(i)}) + \sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})} \\ 我们极大化似然函数L(\theta)等同于最大化下界B(\theta,\theta^{(i)}) \\ 而L(\theta^{(i)})为常数,就等同于最大化\sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})} 我们已经知道L(θ)L(θ(i))ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ)L(θ)L(θ(i))+ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ)我们令L(θ)的下界B(θ,θ(i))=L(θ(i))+ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ)我们极大化似然函数L(θ)等同于最大化下界B(θ,θ(i))L(θ(i))为常数,就等同于最大化ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ)
我们将式子拆开:
∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) − ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ( i ) ) \sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})}\\ =\sum\limits_{Z}P(Z|Y,\theta^{(i)})log{P(Y,Z|\theta)}-\sum\limits_{Z}P(Z|Y,\theta^{(i)})log{P(Y,Z|\theta^{(i)})} ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ)=ZP(ZY,θ(i))logP(Y,Zθ)ZP(ZY,θ(i))logP(Y,Zθ(i))
在减号后面的部分还是个常数,不好含未知参数 θ \theta θ。因此,我们只需要对前面的部分求出当它最大时对应的 θ \theta θ
即 Q ( θ , θ ( i ) ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) ∑ Z P ( Z ∣ Y , θ ( i ) ) = 1 ,是一个条件概率分布,因此可以化简为期望形式,即: = E Z ∣ Y , θ ( i ) l o g P ( Y , Z ∣ θ ) 即Q(\theta,\theta^{(i)})=\sum\limits_{Z}P(Z|Y,\theta^{(i)})log{P(Y,Z|\theta)}\\ \sum\limits_{Z}P(Z|Y,\theta^{(i)})=1,是一个条件概率分布,因此可以化简为期望形式,即:\\ =E_{Z|Y,\theta^{(i)}}log{P(Y,Z|\theta)} Q(θ,θ(i))=ZP(ZY,θ(i))logP(Y,Zθ)ZP(ZY,θ(i))=1,是一个条件概率分布,因此可以化简为期望形式,即:=EZY,θ(i)logP(Y,Zθ)
这就是EM算法的E步的推导。

通过EM算法的E步,我们得到了Q函数
Q ( θ , θ ( i ) ) = ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) = E Z ∣ Y , θ ( i ) l o g P ( Y , Z ∣ θ ) Q(\theta,\theta^{(i)})=\sum\limits_{Z}P(Z|Y,\theta^{(i)})log{P(Y,Z|\theta)}\\ =E_{Z|Y,\theta^{(i)}}log{P(Y,Z|\theta)} Q(θ,θ(i))=ZP(ZY,θ(i))logP(Y,Zθ)=EZY,θ(i)logP(Y,Zθ)
接下来,我们只需要求使 Q ( θ , θ ( i ) ) Q(\theta,\theta^{(i)}) Q(θ,θ(i))极大化的 θ \theta θ,确定第 i + 1 i+1 i+1次的迭代参数的估计值 θ ( i + 1 ) \theta^{(i+1)} θ(i+1),即M步。

3.3 EM算法的图形解释

在推导 E M 算法过程中我们知道, L ( θ ) ≥ L ( θ ( i ) ) + ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) 我们令下界 B ( θ , θ ( i ) ) = L ( θ ( i ) ) + ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) 在推导EM算法过程中我们知道,L(\theta) \geq L(\theta^{(i)}) + \sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})}\\ 我们令下界B(\theta,\theta^{(i)})=L(\theta^{(i)}) + \sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})} 在推导EM算法过程中我们知道,L(θ)L(θ(i))+ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ)我们令下界B(θ,θ(i))=L(θ(i))+ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ)

  • 我们想让似然函数越来越大,等同于是让下界 B ( θ , θ ( i ) ) B(\theta,\theta^{(i)}) B(θ,θ(i))越来越大。

  • 注意,在每轮的迭代中都它所对应的下界函数 B ( θ , θ ( i ) ) B(\theta,\theta^{(i)}) B(θ,θ(i))都是在不断更新的。

  • 我们说明一下,下图中 L ( θ ) L(\theta) L(θ) B ( θ , θ ( i ) ) B(\theta,\theta^{(i)}) B(θ,θ(i)) θ ( i ) \theta^{(i)} θ(i)处相等这句话。

L ( θ ) ≥ L ( θ ( i ) ) + ∑ Z P ( Z ∣ Y , θ ( i ) ) l o g P ( Y , Z ∣ θ ) P ( Y , Z ∣ θ ( i ) ) 当 θ = θ ( i ) 时, P ( Y , Z ∣ θ ( i ) ) P ( Y , Z ∣ θ ( i ) ) = 1 , 那么 l o g P ( Y , Z ∣ θ ( i ) ) P ( Y , Z ∣ θ ( i ) ) = 0 因此 L ( θ ( i ) ) ≥ L ( θ ( i ) ) + 0 , 即 L ( θ ) 和 B ( θ , θ ( i ) ) 在 θ ( i ) 处相等 L(\theta) \geq L(\theta^{(i)}) + \sum\limits_{Z}P(Z|Y,\theta^{(i)})log\frac{P(Y,Z|\theta)}{P(Y,Z|\theta^{(i)})}\\ 当\theta=\theta^{(i)}时,\frac{P(Y,Z|\theta^{(i)})}{P(Y,Z|\theta^{(i)})}=1,那么log\frac{P(Y,Z|\theta^{(i)})}{P(Y,Z|\theta^{(i)})}=0\\ 因此L(\theta^{(i)}) \geq L(\theta^{(i)}) + 0,即L(\theta)和B(\theta,\theta^{(i)})在\theta^{(i)}处相等 L(θ)L(θ(i))+ZP(ZY,θ(i))logP(Y,Zθ(i))P(Y,Zθ)θ=θ(i)时,P(Y,Zθ(i))P(Y,Zθ(i))=1,那么logP(Y,Zθ(i))P(Y,Zθ(i))=0因此L(θ(i))L(θ(i))+0,L(θ)B(θ,θ(i))θ(i)处相等

  • 现在,我们再看3.1EM算法的流程,就应该有更深刻的理解了。

在这里插入图片描述

有关EM算法收敛的证明可以参考:

学会EM算法

接下来会介绍下《统计学习方法》中EM算法的三硬币模型例子,以及EM算法在高斯混合模型中的应用。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/495906.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

【考研数学】跟武忠祥,如何搭配汤家凤《1800》?

可以但不建议&#xff01;正所谓原汤化原食&#xff0c;你做1800&#xff0c;当然是听汤神的更合适&#xff01; 汤家凤与武忠祥的讲课风格真的大不相同&#xff01;汤老师特别注重基础和题量&#xff0c;让你在数理思维上打下扎实的根基。而武老师则更偏向于深厚的理论&#…

天地图如何获取多边形面积

目录 一、初始化地图 二、创建polygonTool 三、多边形获取面积 ​四、完整代码&#xff08;包括添加点、添加面、编辑面、获取面积&#xff09; 项目中提出在地图上绘制面并获取面积&#xff0c;如何实现&#xff1f; 在天地图官网的JavaScript API 中&#xff0c;链接如下…

午马传动已确定加入2024第13届生物发酵展

参展企业介绍 浙江午马传动有限公司&#xff0c;办公室地址位于中国长寿之乡、中国椪柑之乡、中国竹炭之乡丽水&#xff0c;浙江省丽水市青田县东源镇项村村前路99号四楼1号&#xff0c;我公司主要提供&#xff1a;齿轮及齿轮减、变速箱制造&#xff1b;机械设备销售&#xff1…

MySQL 8 索引原理详细分析

千山万水总是情, 问问索引行不行? 轻舟已过万重山, 有种尽管来发难。 索引是在数据库优化时的重要手段之一,今天 V 哥从索引的角度展开讲一讲索引的各个要点,希望可以通过这篇文章,帮助大家彻底搞透索引的关键点。 1.索引的定义与作用2.索引的类型3.索引原理4.二分查…

C#学生信息成绩管理系统

一、系统功能描述 本系统包括两类用户&#xff1a;学生、管理员。管理员可以通过系统来添加管理员信息、修改管理员信息、添加学生信息、修改学生信息&#xff1b;开设课程、查询课程、录入成绩、统计成绩、修改成绩、修改个人密码等&#xff0c;而学生则可以通过系统来选择课…

实现DevOps需要什么?

实现DevOps需要什么&#xff1f; 硬性要求&#xff1a;工具上的准备 上文提到了工具链的打通&#xff0c;那么工具自然就需要做好准备。现将工具类型及对应的不完全列举整理如下&#xff1a; 代码管理&#xff08;SCM&#xff09;&#xff1a;GitHub、GitLab、BitBucket、SubV…

智过网:考一级建造师证有什么用?可以从事哪些工作?

随着国家基础设施建设的不断推进&#xff0c;建筑行业在中国经济中占据了举足轻重的地位。在这样的背景下&#xff0c;一级建造师证成为了众多建筑从业者的追求目标。那么&#xff0c;考取一级建造师证究竟有哪些用处&#xff1f;又能从事哪些工作呢&#xff1f;本文将对此进行…

什么是通配符SSL证书?

在当前互联网环境中&#xff0c;数据传输安全至关重要&#xff0c;而通配符SSL证书作为保护多个子域名的理想工具&#xff0c;因其灵活、经济高效的特性而备受瞩目。本文将详细介绍通配符SSL证书的定义、主要特性及其价格区间。 通配符SSL证书的核心特性概述如下&#xff1a; …

rtthread studio 基于bsp生成代码stm32l475正点原子潘多拉,以及硬件配置

1、基于bsp生成代码 rtthread studio 很强大的一个功能就是可以根据芯片或者bsp 生成驱动代码&#xff0c;而且rtthread内核 已经集成到了代码中&#xff01;&#xff01;只需要关注于如何使用硬件和设备完成我们想要的功能就可以&#xff1b; 它的官网文档也特别详细&#x…

【3D目标检测】Det3d—SE-SSD模型训练(前篇):KITTI数据集训练

SE-SSD模型训练 1 基于Det3d搭建SE-SSD环境2 自定义数据准备2.1 自定义数据集标注2.2 训练数据生成2.3 数据集分割 3 训练KITTI数据集3.1 数据准备3.2 配置修改3.3 模型训练 1 基于Det3d搭建SE-SSD环境 Det3D环境搭建参考&#xff1a;【3D目标检测】环境搭建&#xff08;OpenP…

伴随供应链数字化转型的B2B电商

制造业的数字化浪潮正迅猛地席卷全球&#xff0c;新冠病毒大流行和地缘政治格局的改变促进了不同国家和地区企业对供应链数字化转型的的步伐。除了企业内部的加快数字化之外。企业的营销也加快电商化步伐。 企业内部管理的数字化转型会给电商带来怎样的转变&#xff1f;电商如何…

CMOS逻辑门电路

按照制造门电路的三极管不同&#xff0c;分为MOS型、双极性和混合型。MOS型集成逻辑门有CMOS、NMOS、PMOS&#xff1b;双极型逻辑门有TTL&#xff1b;混合型有BiCMOS。 CMOS门电路是目前使用最为广泛、占主导地位的集成电路。早期CMOS电路速度慢、功耗低&#xff0c;后来随着制…

基于springboot+vue+Mysql的就业信息管理系统

开发语言&#xff1a;Java框架&#xff1a;springbootJDK版本&#xff1a;JDK1.8服务器&#xff1a;tomcat7数据库&#xff1a;mysql 5.7&#xff08;一定要5.7版本&#xff09;数据库工具&#xff1a;Navicat11开发软件&#xff1a;eclipse/myeclipse/ideaMaven包&#xff1a;…

2024最值得推荐的10款开源免费文档管理软件

本文将为大家分享9款开源文档管理系统&#xff1a;Bitrix24、Kimios、OpenDocMan、Papermerge、Nuxeo、OpenKM、Teedy、FileRun、SeedDMS。 在现今充满数字化的世界里&#xff0c;不论大小&#xff0c;各种组织都会产出很多文件、图片等数字化内容。好好管理这些信息对于组织的…

信创实力进阶,Smartbi再获华为云鲲鹏技术认证

日前&#xff0c;经华为技术有限公司评测&#xff0c;思迈特商业智能与数据分析软件Smartbi Insight V11与华为技术有限公司Kunpeng 920 Taishan 200完成并通过相互兼容性测试认证&#xff0c;成功再获华为云鲲鹏技术认证书&#xff0c;标志着Smartbi与华为云鲲鹏产业生态合作更…

Linux系统使用Docker搭建Traefik结合内网穿透实现公网访问管理界面

文章目录 一、Zotero安装教程二、群晖NAS WebDAV设置三、Zotero设置四、使用公网地址同步Zotero文献库五、使用永久固定公网地址同步Zotero文献库 Zotero 是一款全能型 文献管理器,可以 存储、管理和引用文献&#xff0c;不但免费&#xff0c;功能还很强大实用。 ​ Zotero 支…

子虔3D培训大师,助力制造业技能培训

对于制造业企业&#xff0c;传统的培训方式常常伴随着沉重的成本负担&#xff0c;包括聘请培训师的费用、租赁培训场地的租金&#xff0c;以及准备培训材料的成本&#xff0c;这些都让企业在财务上面临不小的压力。同时&#xff0c;传统培训模式还受到时间和空间的限制。学员们…

Redis - 5k star! 一款简洁美观的 Redis 客户端工具~

项目简介 Tiny RDM 是一款现代化、轻量级的跨平台 Redis 桌面客户端&#xff0c;可在 Mac、Windows 和 Linux 系统上运行。初次打开 Tiny RDM&#xff0c;你会被它舒适的风格和配色所吸引&#xff0c;界面简约而不简单&#xff0c;功能齐全。 Tiny RDM 有着如下的功能特性 项…

RF-TI1352P2—双频多协议高发射功率无线模块

RF-TI1352P2是一款基于TI CC1352P7为核心的双频&#xff08;Sub-1 GHz 和 2.4 GHz&#xff09;多协议高发射功率&#xff08;20 dBm&#xff09;无线模块&#xff1b;支持IPEX接口和邮票孔两种天线形式&#xff1b;模块除了集成负责应用逻辑的高性能 48 MHz ARM Cortex-M4F 主处…

【C/C++】C++中的四种强制类型转换

创作不易&#xff0c;本篇文章如果帮助到了你&#xff0c;还请点赞 关注支持一下♡>&#x16966;<)!! 主页专栏有更多知识&#xff0c;如有疑问欢迎大家指正讨论&#xff0c;共同进步&#xff01; &#x1f525;c系列专栏&#xff1a;C/C零基础到精通 &#x1f525; 给大…