最大似然估计基础介绍

一、两个简单的栗子

第一颗栗子

有两个外形完全相同且不透明的黑箱子,甲箱子里装有99个白球和1个黑球,乙箱子里装有1个白球和99个黑球。一次试验里随机选中一个箱子,然后从中取出一个球发现是黑球。请问,这个箱子最有可能是哪个箱子?

很显然,人们最直观的感觉是这个黑球最有可能是从甲箱子里取出来的,因为甲箱子里的黑球多呀。这个推断符合人们的日常经验,这里的最有可能就是“最大似然(maximum-likelihood)”的意思,而这个问题答案背后的原理就是“最大似然原理”。

第二颗栗子

我们来看下用于决策的经典公式之一贝叶斯公式:

p(w|x)=p(x|w)p(w)p(x)

在机器学习当中,其中p(w)称为先验概率,p(x|w)称为类条件概率,p(w|x)称为后验概率,后验概率表示的某事发生了那该事件属于某一类的概率,这个概率越大我们越有理由把该事件划分到这一类中。

以上的表述比较抽象,我们用一个相对实际的例子说明下。夏天到了,我们想调查一下附近一个广场上穿凉鞋遛弯的情况。已知这个广场上男女比例大约在2:1,然后男生穿凉鞋出门的概率大约在1/2,而女生穿凉鞋出门的概率大约在2/3,这就是先验概率。我们看见前方有一个人脚上光溜溜的似乎是一双凉鞋,那么这个人是男生的概率是多少?是女生的概率是多少?

记广场上出现男生的概率p(w1)=2/3,出现女生的概率p(w1)=1/3。记男生穿凉鞋的概率为p(x|w1)=1/2,女生穿穿凉鞋的概率为p(x|w2)=2/3,这就是条件概率。现在需要求解的概率实际上是后验概率p(w1|x)p(w2|x)

我们首先计算广场上有人穿凉鞋的概率:

p(x)=p(x|w1)p(w1)+p(x|w2)p(w2)=59

根据贝叶斯公式可得:

p(w1|x)=p(x|w1)p(w1)p(x)=35p(w2|x)=p(x|w2)p(w2)p(x)=25

二、问题引出

以上的举例都比较简单,在实际问题并不都是这么幸运的,往往先验概率和条件概率都是未知的。根据仅有的样本数据进行分类时,一种可行的办法是我们需要先对先验概率和条件概率进行估计,然后再套用贝叶斯公式。像穿不穿凉鞋、是男是女这类离散有限随机变量的分布似乎还能通过统计来估计。如果是连续型随机变量,我们就要对它的概率密度进行估计。然而困难还不止于此,像卷积神经网络等机器学习算法中随机变量几乎都是多维的,也有可能出现样本数量有限的问题。

问题似乎有点棘手,但解决办法总会有的。既然估计随机变量的分布在某些情况下较难,我们不妨先假设随机变量服从某种分布,然后对分布参数进行估计,最后通过样本校验估计出的分布是否合适。在这种思路下,最大似然估计就是其中一种可行的方法。总结起来,最大似然估计的目的就是:利用已知的样本结果,反推最有可能(最大概率)导致这样结果的参数值。

三、最大似然估计的原理

最大似然估计是建立在最大似然原理的基础上的一个统计方法,是概率论在统计学中的应用。最大似然估计提供了一种给定观察数据来评估模型参数的方法,即:“模型已定,参数未知”。通过若干次试验,观察其结果,利用试验结果得到某个参数值能够使样本出现的概率为最大,则称为最大似然估计。

对于随机变量X,我们想要对它的分布进行估计。为此我们对X进行了n次观察获取了样本集D={x1,x2,...,xn},其中每个样本都是独立同分布的。我们假设X服从参数为θ的某种分布并给出似然函数的定义:

定义1 (似然函数,likelihood function) 联合概率密度函数f(D|θ)称为相对于样本集D={x1,x2,...,xn}的$ \thetal( \theta)$:

l(θ)=f(D|θ)=i=1nf(xi|θ)

如果θ^是使似然函数$ l( \theta) \theta\hat{ \theta} \theta\theta(D)$。

四、求解最大似然函数

最大似然估计的过程就是求解参数θ为何值时似然函数取得最大值的过程,这个过程用以下公式来表示:

θ^=arg maxθl(θ)=arg maxθi=1nf(xi|θ)

为了便于分析,在实际分析过程中往往构造一种似然函数的对数形式(对数似然函数):

H(θ)=ln(l(θ))

这样一来,求解过程可以转化为:

θ^=arg maxθH(θ)=arg maxθi=1nln(f(xi|θ))

以下分两种情况讨论:

第一种: 当似然函数只有一个参数时,我们可以求导对数似然函数。在对数似然函数满足连续、可微的正则条件下,最大似然估计量是下面微分方程的解:

dH(θ)dθ=dlnl(θ)dθ=0

第二种: 当似然函数有多个参数时,则θ可以表示为具有n个分量的未知向量:

θ=(θ1,θ2,...,θn)

记梯度算子:

θ=(θ1,θ2,...,θn)

若似然函数满足连续可导的条件,则最大似然估计量就是如下方程的解:

θH(θ)=i=1nθln(f(xi|θ))

记住, 方程的解只是一个估计值,只有在样本数趋于无限多的时候,它才会接近于真实值。

五、实例演示

4.1 似然函数连续可导

设样本服从正太分布N(μ,σ2),则似然函数为:

L(μ,σ2)=i=1n12πσe(xiμ)22σ2=(2πσ2)n2e12σ2i=1n(xiμ)2

其对数形式为:

H(μ,σ2)=n2ln(2π)n2ln(σ2)12σ2i=1n(xiμ)2

求其偏导数,得到方程组:

Hμ=1σ2i=1n(xiμ)=0

Hσ2=n2σ2+12σ4i=1n(xiμ)2=0

最终解得:

μ^=x¯=1ni=1nxi

σ2^=1ni=1n(xix¯)

不难通过似然函数极其偏导数的单调性可知,此处的似然函数值就是最大值。

4.2 似然函数连续不可导

设样本服从均匀分布[a,b],则随机变量X的概率密度函数为:

f(x)={1ba,axb0,other

对于样本D={x1,x2,...,xn},其似然函数为:

L(a,b)={1(ba)n,axb0,other

很显然该似然函数不是连续可导函数,所以必须从似然函数的出发求似然函数的最大值。当x[a,b]时显然似然函数大于0,所以最大值一定在x[a,b]时达到。为了使似然函数函数达到最大值,那么就要使ba尽可能地小,但是又必须满足bmax{x1,x2,...,xn}amin{x1,x2,...,xn}。因此ab的最大似然估计值为:

a^=min{x1,x2,...,xn}b^=max{x1,x2,...,xn}

总结

现在我们理一下本文的思路,首先我们通过两个简单的例子粗浅地解释了最大似然估计的意义,然后利用最大似然原理推导了最大似然估计的方法,最后我们又求解了正太分布和均匀分布参数的最大似然估计值。

总而言之,最大似然估计具备以下几个特点:

  1. 比其他估计方法更加简单;
  2. 收敛性:无偏或者渐近无偏,当样本数目增加时,收敛性质会更好;
  3. 如果假设的类条件概率模型正确,则通常能获得较好的结果。但如果假设模型出现偏差,将导致非常差的估计结果。

那么最后的最后,我们总结下最大似然估计的方法流程吧:

  1. 预估随机变量的分布,给出其概率密度函数;
  2. 写出对于样本的似然函数,判断似然函数的连续性和可导性;
  3. 如果似然函数连续可导,求解似然函数导数为0时时参数的取值,并根据似然函数及其导数的单调性,判断此处的似然函数值是否是否为最大值;
  4. 如果似然函数不是连续可导的,则视情况判断是否存在最大值。
posted @   拍呀拍皮球  阅读(718)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 全程不用写代码,我用AI程序员写了一个飞机大战
· DeepSeek 开源周回顾「GitHub 热点速览」
· 记一次.NET内存居高不下排查解决与启示
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
点击右上角即可分享
微信分享提示