转载信息:
原文作者: nebulaf91
原文原始地址:http://blog.csdn.net/u011508640/article/details/72815981
最大似然估计(Maximum likelihood estimation, 简称MLE)和最大后验概率估计(Maximum a posteriori estimation, 简称MAP)是很常用的两种参数估计方法,如果不理解这两种方法的思路,很容易弄混它们。下文将详细说明MLE和MAP的思路与区别。
但别急,我们先从概率和统计的区别讲起。
概率 与 统计 的区别
概率(probabilty)和统计(statistics)看似两个相近的概念,其实研究的问题刚好相反。
概率研究的问题是,已知一个模型和参数,怎么去预测这个模型产生的结果的特性(例如均值,方差,协方差等等)。 举个例子,我想研究怎么养猪(模型是猪),我选好了想养的品种、喂养方式、猪棚的设计等等(选择参数),我想知道我养出来的猪大概能有多肥,肉质怎么样(预测结果)。
统计研究的问题则相反。统计是,有一堆数据,要利用这堆数据去预测模型和参数。仍以猪为例。现在我买到了一堆肉,通过观察和判断,我确定这是猪肉(这就确定了模型。在实际研究中,也是通过观察数据推测模型是/像高斯分布的、指数分布的、拉普拉斯分布的等等),然后,可以进一步研究,判定这猪的品种、这是圈养猪还是跑山猪还是网易猪,等等(推测模型参数)。
一句话总结:
概率是已知模型和参数,推数据。统计是已知数据,推模型和参数。
显然,本文解释的MLE和MAP都是统计领域的问题。它们都是用来推测参数的方法。为什么会存在着两种不同方法呢? 这需要理解贝叶斯思想。我们来看看贝叶斯公式。
什么是贝叶斯公式
总的来说,就是用别的条件概率来求这一个条件概率。
以下内容转自 知乎问答
画图说明
阴影部分是A和B事件的交集。它占B事件的比例即为贝叶斯公式所描述的概率 0.1 / 0.4 = 1/4
举例说明
- 贝叶斯公式就是在描述,你有多大把握能相信一件证据?(how much you can trust the evidence)
- 并且,贝叶斯公式:做判断的时候,要考虑所有的因素。老板骂你,不一定是你把什么工作搞砸了,可能只是他今天出门前和太太吵了一架。
- 一个本来就难以发生的事情,就算出现某个证据和他强烈相关,也要谨慎。证据很可能来自别的虽然不是很相关,但发生概率较高的事情。 发现刚才写的代码编译报错,可是我今天状态特别好,这语言我也很熟悉,犯错的概率很低。因此觉得是编译器出错了。 ————别,还是先再检查下自己的代码吧。
具体示例:
贝叶斯公式与两个概率有关系,一个是先验概率(基础概率),一个是现象概率(观察到的条件)。
例子:
某城市发生了一起汽车撞人逃跑事件,该城市只有两种颜色的车,蓝色15%,绿色85%,事发时有一个人在现场看见了,他指证是蓝车。但是根据专家在现场分析,当时那种条件能看正确的可能性是80%。那么,肇事的车是蓝车的概率到底是多少?
令
- B是城市里车为蓝色的事件,
- G为车子是绿色的事件,
- E为观察到车子为蓝色的事件。
则由已知条件可以得出P(B)=0.15,P(G)=P(~B)=0.85,至于P(E)我们一会儿再说。
好了,现在,如果没有证人看到肇事者车的话,那么我们只能盲猜,因此肇事者的车子为蓝色的概率只能是整个城市里面车为蓝色的概率,也就是先验概率P(B)=0.15,因为这时我们还没有其他证据介入,只能做个粗略的估算。
似然函数
似然(likelihood) 这个词其实和 概率(probability) 是差不多的意思,Colins字典这么解释:The likelihood of something happening is how likely it is to happen. 你把likelihood换成probability,这解释也读得通。但是在统计里面,似然函数和概率函数却是两个不同的概念(其实也很相近就是了)
对于这个函数:
P(x∣θ)
输入有两个:x表示某一个具体的数据;θ 表示模型的参数。
-
如果θ 是已知确定的,x 是变量,这个函数叫做概率函数(probability function),它描述对于不同的样本点x,其出现概率是多少。
-
如果x 是已知确定的,θ 是变量,这个函数叫做似然函数(likelihood function), 它描述对于不同的模型参数,出现x这个样本点的概率是多少。
这有点像“一菜两吃”的意思。其实这样的形式我们以前也不是没遇到过。
例如,
f
(
x
,
y
)
=
x
y
f(x, y) = x^y
f(x,y)=xy, 即x的 y次 方 。
- 如果x是 已 知 确 定 的 (例如x = 2) ,这就是 f ( y ) = 2 y f(y) = 2^y f(y)=2y, 这 是 指 数 函 数 。
- 如果y是 已 知 确 定 的 (例如y = 2) ,这就是 f ( x ) = x 2 f(x) = x^2 f(x)=x2,这是二次函数。
同一个数学形式,从不同的变量角度观察,可以有不同的名字。
这么说应该清楚了吧? 如果还没讲清楚,别急,下文会有具体例子。
现在真要先讲讲MLE了。。
最大似然估计 MLE
最大后验概率估计
则P ( x 0 ∣ θ ) P ( θ ) 的函数图像为:
注意,此时函数取最大值时,θ 取值已向左偏移,不再是0.7。实际上,在θ = 0.558 时函数取得了最大值。即,用最大后验概率估计,得到θ = 0.558
最后,那要怎样才能说服一个贝叶斯派相信θ = 0.7 呢?你得多做点实验。。
如果做了1000次实验,其中700次都是正面向上,这时似然函数为:
如果仍然假设P ( θ ) 为均值0.5,方差0.1的高斯函数,P ( x 0 ∣ θ ) P ( θ ) 的函数图像为:
在θ = 0.696 处,P ( x 0 ∣ θ ) P ( θ )取得最大值。
这样,就算一个考虑了先验概率的贝叶斯派,也不得不承认得把θ 估计在0.7附近了。
PS. 要是遇上了顽固的贝叶斯派,认为P ( θ = 0.5 ) = 1 ,那就没得玩了。。 无论怎么做实验,使用MAP估计出来都是θ = 0.5 。这也说明,一个合理的先验概率假设是很重要的。(通常,先验概率能从数据中直接分析得到)
相信读完上文,MLE和MAP的区别应该是很清楚的了。
MAP就是多个作为因子的先验概率P ( θ )。
或者,也可以反过来,认为MLE是把先验概率P ( θ ) 认为等于1,即认为θ 是均匀分布。