EM算法基石-最大似然估计
前言
在统计计算中,最大期望(EM)算法是在概率模型中寻找参数最大似然估计或者最大后验估计的算法(机器学习十大算法之一),其中概率模型依赖于无法观测的隐藏变量(Latent Variable)。最大期望经常用在机器学习和计算机视觉的数据聚类(Data Clustering)领域。而本文要讲的就是最大期望算法的基石-最大似然估计。
最大似然估计(Maximum Likelihood,ML)
概述
最大似然估计也称极大似然法,是一种统计方法,它用来求一个样本集的相关概率密度函数的参数。这个方法最早是遗传学家以及统计学家罗纳德·费雪爵士在1912年至1922年间开始使用的。
最大似然法明确地使用概率模型,其目标是寻找能够以较高概率产生观察数据的系统发生树。最大似然法是一类完全基于统计的系统发生树重建方法的代表。
简单举例
设有外形完全相同的两个箱子,甲箱有99个白球1个黑球,乙箱有1个白球99个黑球.今随机地抽取一箱,然后再从这箱中任取一球,结果发现是白球.问这个箱子是甲箱还是乙箱?
仅仅从取出的球是白球这一点是无法从逻辑上严格加以判定该箱究竟是甲箱还是乙箱的。但是如果现在一定要我们做出选择,那么我们只能这样来考虑:从箱中取出的球是白球这一点来看,甲箱和乙箱哪个看上去更像是真正从中取球的箱子?
我们可以这样来分析,如果该箱是甲箱,则取得白球的概率为0.99;如果该箱是乙箱,则取得白球的概率0.01.因此,用“该箱是甲箱”来解释所取的球是白球这一事件更有说服力一些,从而我们判定甲箱比乙箱更像一些。最后我们做出推断,这球是从甲箱取出的。
离散分布,离散有限参数空间
看完上面那个简单的例子,下面再来考虑一个抛硬币的例子。假设这个硬币正面跟反面轻重不同。我们把这个硬币抛80次,并把正面的次数记下来,正面记为H,反面记为T),并把抛出一个正面的概率记为p,抛出一个反面的概率记为1 − p。假设我们抛出了49个正面,31 个反面,即49次H,31次T。假设这个硬币是我们从一个装了三个硬币的盒子里头取出的。这三个硬币抛出正面的概率分别为p = 1 / 3, p = 1 / 2, p = 2 / 3. 这些硬币没有标记,所以我们无法知道哪个是哪个。使用最大似然估计,通过这些试验数据,我们可以计算出哪个硬币的可能性最大。这个可能性函数取以下三个值中的一个:
P(H=49,T=31|ρ=13)=C4980(13)49(1−13)31≈0.000P(H=49,T=31|ρ=12)=C4980(12)49(1−12)31≈0.012P(H=49,T=31|ρ=23)=C4980(23)49(1−23)31≈0.054
我们可以看到当ˆp=2/3时,可能性函数取得最大值。这就是p的最大似然估计。
离散分布,连续参数空间(升级版)
现在假设上面的例子中的盒子中有无数个硬币,对于0≤p≤1中的任何一个p, 都有一个抛出正面概率为p的硬币对应,我们再来求其可能性函数的最大值:
fD(H=49,T=31|ρ)=C4980ρ49(1−ρ31)
两边同时取p微分
0=ρ48(1−ρ)[49(1−ρ)−31ρ]
求得其解分别为:
ρ=0,ρ=1和ρ=4980
使可能性最大的解显然是p = 49 / 80(因为p = 0 和p = 1 这两个解会使可能性为零)。因此我们说最大似然估计值为ˆp=49/80.
这个结果很容易一般化。只需要用一个字母t代替49用以表达伯努利试验中的被观察数据(即样本)的成功次数,用另一个字母n代表伯努利试验的次数即可。使用完全同样的方法即可以得到最大似然估计值:
ˆp=tn
最大似然估计的一般求解步骤
- 写出似然函数
Lθ=n∏i=1p(xi;θ)(总体X为离散型时)Lθ=n∏i=1f(xi;θ)(总体X为连续型时)
对似然函数两边取对数有
lnLθ=n∑i=1lnp(xi;θ)lnLθ=n∑i=1lnf(xi;θ)对lnL\theta求导数并令之为0:
dlnLθdθ=0
此方程为对数似然方程。解对数似然方程所得,即为未知参数 的最大似然估计值。
举个栗子:连续分布,连续参数空间(终级版)
设总体 X N(μ,σ2),μ,σ2(正太分布)为未知参数,X1,X2...,Xn是来自总体X的样本,X1,X2...,Xn是对应的样本值,求μ与σ2的最大似然估计值。
解: X的概率密度为
f(x|μ,σ2)=1√2πσe−(xi−μ)22σ2(−∞<x<+∞),
可得似然函数如下:
L(μ,σ2)=n∏i=11√2πσe−(xi−μ)22σ2
取对数,得
lnL(μ,σ2)=−n2ln(2π)−n2ln(σ2)−12δ2n∑i=1(xi−μ)2
令
{∂∂μlnL(μ,σ)=0,∂∂σ2lnL(μ,σ)=0,
可得
{1σ2(∑2i=1xi−nμ)=0,−n2σ2+12(σ2)2∑ni=1(xi−μ)2=0.
解得
{ˆμ=1n∑ni=1xi=¯x,ˆσ2=1n∑ni=1(xi−¯x)2.
故μ和δ2的最大似然估计量分别为
ˆμ=¯X,^δ2=1nn∑i=1(Xi−¯X)2