先验概率、最大释然估计(MLE)与最大后验估计(MAP)

前言

在数据分析和机器学习中,估计是一个很重要的内容,这里着重介绍下极大似然估计与极大后验估计。

最大似然估计(MLE)

    最大似然估计是模型已定,参数未定时的一种估计方法。比如说对于抛硬币而言,模型已定,可以看做是多个伯努利实验,我们所不知道的是这个硬币正面朝上的概率 p ,所以我们的任务就是估计p的值。极大似然估计的思想是,对于已经给定的一些观测数据,参数 p 的取值应使得取得这些观测数据的概率最大。
    再以上面抛硬币为例,假设10次实验,7次正面朝上,此时根据极大似然估计p的取值应该为 710 ,具体计算过程一会给出。
    OK,这里总结出极大似然估计的一般过程。首先极大似然估计的前提是样本的采样是独立同分布的,假设现在得到的采样结果是 x1 , x2 , x3 , x4 , x5 ……,给定参数 θ ,则取得该采样结果的联合概率为:

f(x1,x2,x3,xn;θ)=f(x1;θ)×f(x2;θ)××f(xn;θ)

L(θ|x1,x2,,xn)=i=1nf(xi|θ)

为了求得 θ 的值使得 L(θ|x1,x2,,xn) 取得极大值,而连乘形式通常很难求值,因此一般情况下会把连乘转化成连加,即会求 L 的对数,如下所示:
lnL(θ|x1,x2,,xn)=i=1nlnf(xi|θ)

此时 xi 是已知量,只有参数 θ 是未知量,因此对 θ 求导。
dlnL(θ)dθ=0

求出 θ 的值即可。

特殊情况下, L(θ) 是一个递增函数或者其它比较简单的形式,我们无需进行求对数,只需直接判断即可。

现在对开头的抛硬币例子进行解释,我们可以判定每次抛硬币正面朝上的概率为 f(x=1|p)=px×(1p)(1x) ,则10次实验做完联合概率为
L(x1,x2,x10|p)=px1px2px10(1p)(1x1)(1p)(1x10)=10i=1pxi×(1p)(1xi)
对其进行求对数

lnL(x1,x2,x10|p)=7lnp+ln(1p)

再对 p 进行求导:
dlnL(θ)dp=7p3(1p)=0

求解得到 p=710

最大后验估计(MAP)

    最大后验估计与最大似然估计是类似的,只是这里加入了先验概率,我们在计算上述的抛硬币的试验时,并没有考虑硬币本身的因素,即 p 可能也是符合一个分布的。根据贝叶斯理论:

p(θ|X)=p(X|θ)×p(θ)θip(X|θi)×p(θi)

这里的 p(θ) 是参数 θ 的先验概率, p(θ|X) 是后验概率,而 p(X|θ) 就是我们上面提到的似然函数。在最大似然估计中,我们并没有考虑 p(θ) ,即我们假设 p 是一个固定值,但实际上,参数p可能并不是固定的,它只是取某些值可能性比较大。因此我们只要将似然函数乘以先验概率然后取最大即可。
    仍以上面抛硬币来举例,这里以 Beta 分布来估计参数 p 的值,Beta分布是一个使用率非常高的分布,它根据 α β 的值可以使 Beta(α,β) 取不同的值,如下图所示。
这里写图片描述
所以根据先验概率的要求,我们要求 p(p|α,β) ,即:

p(p|α,β)=1B(α,β)pα1(1p)β1

B(α,β)=Γ(α)Γ(β)Γ(α+β)

根据图中的概率分布,我们假设这个硬币是均匀的,这里取 α=β=4 ,通过这个假设来给我们最大似然估计求出的结果进行修正。
θ^map=ln((i=110pxi(1p)(1xi))×1B(4,4)p3(1p)3)

dθ^mapdp=7p31p+3p31p=0

p=0.5

这里比较凑巧, p=0.5 ,与我们的假设是比较相似的,准确度相比较最大似然估计似乎有一定提高。

参考

http://blog.csdn.net/yangliuy/article/details/8296481
http://www.cnblogs.com/liliu/archive/2010/11/24/1886110.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值