一、定义
最大后验估计是根据经验数据获得对难以观察的量的点估计。与最大似然估计类似,但是最大的不同时,最大后验估计的融入了要估计量的先验分布在其中。故最大后验估计可以看做规则化的最大似然估计。
回顾上篇文章中的最大似然估计,假设 x x x为独立同分布的采样, θ \theta θ为模型参数, f f f为我们所使用的模型。那么最大似然估计可以表示为:
θ ^ M L E ( x ) = arg max θ f ( x ∣ θ ) \hat{\theta}_{M L E}(x)=\underset{\theta}{\arg \max } f(x \mid \theta) θ^MLE(x)=θargmaxf(x∣θ)
假设 θ \theta θ的先验分布为 g g g。通过贝叶斯定理,对于 θ \theta θ的后验分布如下式所示:
θ ↦ f ( θ ∣ x ) = f ( x ∣ θ ) g ( θ ) ∫ θ ′ ∈ Θ f ( x ∣ θ ′ ) g ( θ ′ ) d θ ′ \theta\mapsto f(\theta\mid x)=\frac{f(x\mid\theta)g(\theta)}{\int_{\theta^{\prime}\in\Theta}f(x\mid\theta^{\prime})g(\theta^{\prime})d\theta^{\prime}} θ↦f(θ∣x)=∫θ′∈Θf(x∣θ′)g(θ′)dθ′f(x∣θ)g(θ)
后验分布的目标为:
θ ^ M A P ( x ) = arg max θ f ( x ∣ θ ) g ( θ ) ∫ Θ f ( x ∣ θ ′ ) g ( θ ′ ) d θ ′ = arg max θ f ( x ∣ θ ) g ( θ ) \begin{aligned} \hat{\theta}_{MAP}(x) & =\underset{\theta}{\arg\max}\frac{f(x\mid\theta)g(\theta)}{\int_{\Theta}f(x\mid\theta^{\prime})g(\theta^{\prime})d\theta^{\prime}} \\ & =\underset{\theta}{\arg\max}f(x\mid\theta)g(\theta) \end{aligned} θ^MAP(x)=θargmax∫Θf(x∣θ′)g(θ′)dθ′f(x∣θ)g(θ)=θargmaxf(x∣θ)g(θ)
最大后验估计可以看做贝叶斯估计的一种特定形式。
在MAP中我们应注意的是:
MAP与MLE最大区别是MAP中加入了模型参数本身的概率分布,或者说,MLE中认为模型参数本身的概率的是均匀的,即该概率为一个固定值。
二、举例
1、离散
假设有五个袋子,各袋中都有无限量的饼干(樱桃口味或柠檬口味),已知五个袋子中两种口味的比例分别是
(1)樱桃 100%
(2)樱桃 75% + 柠檬 25%
(3)樱桃 50% + 柠檬 50%
(4)樱桃 25% + 柠檬 75%
(5)柠檬 100%
如果只有如上所述条件,那问从同一个袋子中连续拿到2个柠檬饼干,那么这个袋子最有可能是上述五个的哪一个?
我们首先采用最大似然估计来解这个问题,写出似然函数。假设从袋子中能拿出柠檬饼干的概率为p(我们通过这个概率p来确定是从哪个袋子中拿出来的),则似然函数可以写作
p ( 两个柠檬饼干 ∣ 袋子 ) = p 2 p(\text{两个柠檬饼干}\mid\text{袋子})=p^2 p(两个柠檬饼干∣袋子)=p2
由于 p p p的取值是一个离散值,即上面描述中的 0 , 25 % , 50 % , 75 % , 1 0, 25\%, 50\%, 75\%, 1 0,25%,50%,75%,1。我们只需要评估一下这五个值哪个值使得似然函数最大即可,得到为袋子5。这里便是最大似然估计的结果。
上述最大似然估计有一个问题,就是没有考虑到模型本身的概率分布,下面我们扩展这个饼干的问题。
假设拿到袋子1或5的机率都是0.1,拿到2或4的机率都是0.2,拿到3的机率是0.4,那同样上述问题的答案呢?这个时候就变最大后验概率了。我们根据公式
θ ^ M A P ( x ) = arg max θ f ( x ∣ θ ) g ( θ ) ∫ Θ f ( x ∣ θ ′ ) g ( θ ′ ) d θ ′ = arg max θ f ( x ∣ θ ) g ( θ ) \begin{aligned} \hat{\theta}_{MAP}(x) & =\underset{\theta}{\arg\max}\frac{f(x\mid\theta)g(\theta)}{\int_{\Theta}f(x\mid\theta^{\prime})g(\theta^{\prime})d\theta^{\prime}} \\ & =\underset{\theta}{\arg\max}f(x\mid\theta)g(\theta) \end{aligned} θ^MAP(x)=θargmax∫Θf(x∣θ′)g(θ