参数估计的方法,MLE,MAP,Bayesian estimator

Density estimation是learning中常见的一个task,即估计该分布的参数θ。在有限的样本下,如何判定哪个估计最优,概率论中有两种常用的principle:MLE(Maximum likelihood estimation),MAP(Maximum a posteriori estimation)。由于估计的是一个确定的参数值,MLE和MAP称为点估计。事实上,由于样本有限,这两种principle都不能保证估计的参数一定准。更进一步讲,不完全准确的是不存在的。所以,更合理的方法是认为估计也是不确定的,也是一个分布。考虑θ的分布,而不是一个确切值的目标函数估计通常称为Bayes estimators或Bayes inference.

1. MLE estimator

MLE选择给定当前数据下最匹配的参数,目标是:

[ hat{theta}_{ML} = mathop{argmax_theta} L(theta|D) = mathop{argmax}_theta P(D|theta)]

例子:掷图钉实验,假尖朝上的概率。

设随机变量x=0表示帽朝上, x=1表示尖朝上,现在进行了N次试验x1, ..., xN。我们知道x~Bernouli(μ),且P(x=0)=μ,P(x=1)=1-μ。用一个统一的式子表示:

[P(x) = mu ^x (1-mu )^{(1-x)} ]

假设这N次试验是独立同分布的,整个log likelihood可以写成:

[l(theta ;X) = sum_{i=1}^N{x_ilogmu + (1-mu)^{(1-x_i)}} = n_1log mu + (N-n_1) log(1-mu) ]

其中,n0,n1分别表示xi=0,1的试验次数。令上式导数等于0,可解得:

[frac{partial l} {partial mu} = frac{n_1}{mu} - frac{N-n_1}{1-mu} = 0 Rightarrow hat{mu}_{MLE} = frac{n_1}{N} ]

如果样本真的符合独立同分布假设,根据Chernoff bound,有几十个样本就可以得到参数比较好的估计。如果样本过少,则variance非常大,不可靠。另外,真实应用场景下,试验数据通常都不是iid的,可能受很多潜在因素的影响。于是需要引入潜在变量,来建立条件独立性或者其他更高级的手段。

2. MAP estimator

一种克服数据不充分下得到错误估计的方法,就是引入人对θ的经验认识。比如,实验者以前掷过图钉,在进行掷图钉实验之前,会对尖朝上的概率有一个大致的认识(如果他能肯定该概率是多少,那就不用实验了)事实上,不同的图钉和不同的环境下,该概率并不一定一样,所以是没法肯定的。因此,先验只是表明了θ的取值的大致猜测,它通常是关于θ的一个连续型的分布。

MAP最大化后验分布要求MLE与prior乘积最优, 取log likelihood:

[hat{theta}_{MAP} = argmax_theta{ L(theta;X) + log P(theta)} ]

(注意:uniform的先验等于没加先验(non-informative prior),此时MAP estimator=MLE estimator.)

假设θ~Beta(α, β), 即 P(theta)=fracGamma(alpha+beta)Gamma(alpha)Gamma(beta)thetaalpha1(1theta)(beta1) ,此时θ的后验分布:

[P(theta|X) = frac{P(X|theta)P(theta)}{P(X)} = frac{1}{P(X)}frac{Gamma(alpha + beta)}{Gamma(alpha) Gamma(beta)} theta^{n_1 + alpha - 1} (1-theta)^{n_0 + beta -1} = frac{Gamma(N + alpha + beta)}{Gamma(n_1 + alpha) Gamma(n_0 + beta)}theta^{n_1 + alpha -1} (1 - theta)^{n_0 + beta -1} ]

这里应用到了 intxa(1x)bdx=fracGamma(a+b+2)Gamma(a)Gamma(b) .

可以看出,θ|X~Beta(n1+α, n0+β). 对P(θ|X)求导,容易得出:

[hat{theta}_{MAP} = frac{n_1 + alpha - 1}{N + alpha + beta - 2}]

可以看出,MAP估计相当于视共轭先验Beta(α,β)为α+β-2次虚拟实验,其中,有α-1次head,β-1次tail。MAP可以利用先验知识纠正MLE在少量样本下的估计偏差,当然条件是先验知识够准。

备注:这里之所以采用Beta分布来建模P(θ),是因为它是Bernouli分布的conjugate prior。Conjugate prior的好处是后验分布仍保留先验的形式,即同类型分布,相当于引入了额外的样本,术语pseudo-observations 。虽然这样做只是人们的一厢情愿,但能大大简化计算,所以被广泛采用。

几组不同参数的Beta分布如下:

3. Bayes estimator

上面说到,采用共轭先验得到的θ的后验分布仍是和先验分布同种类型的分布。比如上面的例子中θ|X仍是Beta分布。在MAP中,只取了P(θ|X)的峰值作为θ的估计,忽略了θ的其他可能性,可能丢失信息。

Bayes estimator则把θ的所有可能取值考虑进来,然后算posterior分布上算期望。再用掷图钉的例子,在算出P(θ|X)后,根据Beta分布的性质,可得θ的后验期望是:

[E_{theta|X}(theta) = frac{n_1 + alpha}{N+alpha + beta}]

可以看出,MAP估计相当于视共轭先验Beta(α,β)为α+β次虚拟实验,其中,有α次head,β次tail。算Bayes estimator要比MAP更可靠些。但随着数据越多,Bayes estimator,MAP和MLE越趋于一致。Bayes estimator更常见于估计θ后验分布上的某个目标函数值Eθ|X(f),也称为Bayes inference. 比如EM中,θ是latent variables,f是complete likelihood。

Bayes estimator的一个弱点就是需要对θ在P(θ|X)上积分,通常计算比较困难。采用conjugate先验,可直接得到后验分布,避免积分。实在intractable的话,可以用MAP来近似估计。

reference:

Heinrich, G. (2009). Parameter estimation for text analysis. Technical report.

阅读更多
个人分类: stats
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

参数估计的方法,MLE,MAP,Bayesian estimator

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭