MLE与MAP


前言

这篇博客中,我主要想复习一下极大似然估计(maximum likelihood estimation, MLE)和最大后验估计(maximum a posteriori estimation, MAP)。

MLE

似然函数

假设我么现在有一个随机变量XX的pdf或者分布律P(X∣θ)P(X\mid \theta),其中θ\theta是XX的分布所需要的参数。

对于一个服从泊松分布的随机变量X∼Po(λ)X\sim \mathrm{Po}(\lambda),θ\theta为λ\lambda。对于一个服从高斯分布的随机变量X∼N(μ,σ2)X \sim \mathcal{N}(\mu, \sigma^{2}),θ\theta就是一个参数向量[μ,σ2]⊤[\mu, \sigma^{2}]^{\top}。

对P(X∣θ)P(X \mid \theta),我们可以看作,当给定参数θ\theta之后,XX的取值函数。 更进一步,P(X∣θ)P(X \mid \theta)表示,当给定参数θ\theta之后,XX的取值xx出现的可能性。

如果我们不拘泥于概率密度函数,而是更一般的函数f(x)f(x),我们会发现将参数和变量分开的写法很有一般性。 比如说,我们考虑一个线性函数

f(x)=β0+β1x,f(x) = \beta_{0} + \beta_{1}x,

这里可以仿照概率函数的写法写作

f(x∣B=[β0,β1]⊤).f(x \mid \boldsymbol{B} = [\beta_0, \beta_{1}]^{\top}).

相当于,给定β0\beta_{0}和β1\beta_{1} 之后,根据xx的取值,得到对应的函数值。

接下来我们回到P(X∣θ)P(X \mid \theta)。我们目前已知讨论的固定θ\theta,改变XX的取值。但实际上P(X∣θ)P(X \mid \theta)是一个由X=xX=x和θ\theta共同构成的函数。 例如,对于高斯分布N(μ,σ2)\mathcal{N}(\mu, \sigma^{2}),我们有

P(X=x∣[μ,σ2]⊤)=12πσ2exp⁡(−12⋅(x−μ)2σ2).P(X=x \mid [\mu, \sigma^{2}]^{\top}) = \frac{1}{\sqrt{2\pi\sigma^{2}}}\exp{\left(-\frac{1}{2}\cdot\frac{(x-\mu)^{2}}{\sigma^{2}}\right)}.

对于上面这个pdf,我们写作

P(x,μ,σ2)P(x, \mu, \sigma^{2})

其实也未尝不可。

此时,我们从XX里抽一个样本x1x_{1},代入P(x,μ,σ2)P(x, \mu, \sigma^{2}),并把该函数想象成关于μ\mu和σ2\sigma^{2}的函数, 我们有

P(x,μ,σ2)=L([μ,σ2]⊤∣x1).P(x, \mu, \sigma^{2}) = L\left([\mu, \sigma^{2}]^{\top} \mid x_{1}\right).

这里的L([μ,σ2]⊤∣x1)L\left([\mu, \sigma^{2}]^{\top} \mid x_{1}\right),可以看作给定X=x1X=x_{1}时,[μ,σ2]⊤[\mu, \sigma^{2}]^{\top}对这个观测值的支持程度。 我们一般称呼它为似然函数。 注意这里我们没有用可能性或者概率去描述和称呼,这是因为当x1x_{1}被给定之后,对所有的可能的[μ,σ2]⊤[\mu, \sigma^{2}]^{\top}求积分得到的结果可能不为11。

举个例子,为了方便,我们假设高斯分布的μ\mu已知,然后给定X=x1X = x_{1}之后,我们有

L(σ2∣x1,μ)=12πσ2exp⁡(−12⋅(x1−μ)2σ2).\begin{aligned} L(\sigma^{2} \mid x_{1}, \mu) &= \frac{1}{\sqrt{2\pi\sigma^{2}}}\exp{\left(-\frac{1}{2}\cdot\frac{(x_1-\mu)^{2}}{\sigma^{2}}\right)}. \end{aligned}

然后我们在σ∈[0,+∞)\sigma\in [0, +\infty )上求积分。 先令a=x1−μa = x_{1} - \mu,我们有

∫0+∞L(σ2∣x1,μ)dσ=∫0+∞12πσ2exp⁡(−a22σ2)dσ=12π∫0+∞1σexp⁡(−a22σ2)dσ\begin{aligned} \int_{0}^{+\infty } L(\sigma^{2} \mid x_{1}, \mu) d\sigma &= \int_{0}^{+\infty } \frac{1}{\sqrt{2\pi\sigma^{2}}}\exp{\left(-\frac{a^{2}}{2\sigma^{2}}\right)} d\sigma \\ &= \frac{1}{\sqrt{2\pi}} \int_{0}^{+\infty } \frac{1}{\sigma}\exp{\left(-\frac{a^{2}}{2\sigma^{2}}\right)} d\sigma \end{aligned}

我们发现,

lim⁡σ→+∞exp⁡(−a22σ2)=1\lim_{\sigma\to +\infty } \exp{\left( -\frac{a^{2}}{2\sigma^{2}}\right)} = 1

这意味着存在一个MM,当σ>M\sigma > M的时候,

exp⁡(−a22σ2)>12.\exp{\left( -\frac{a^{2}}{2\sigma^{2}}\right)} > \frac{1}{2}.

所以我们有

12π∫M+∞1σexp⁡(−a22σ2)dσ>122π∫M+∞1σdσ=+∞\frac{1}{\sqrt{2\pi}} \int_{M}^{+\infty } \frac{1}{\sigma}\exp{\left(-\frac{a^{2}}{2\sigma^{2}}\right)} d\sigma > \frac{1}{2\sqrt{2\pi}} \int_{M}^{+\infty } \frac{1}{\sigma} d\sigma = + \infty

对于σ∈[0,M]\sigma \in [0, M]的部分,积分值一定大于00。 结合起来我们有

12π∫0+∞1σexp⁡(−a22σ2)dσ=+∞.\frac{1}{\sqrt{2\pi}} \int_{0}^{+\infty } \frac{1}{\sigma}\exp{\left(-\frac{a^{2}}{2\sigma^{2}}\right)} d\sigma = + \infty .

所以我们可以说明L(σ2∣x1,μ)L(\sigma^{2} \mid x_{1}, \mu)不满足归一化公理,自然也就不是一个概率。

但也有可以归一化的情况, 假设高斯分布的σ2\sigma^{2}已知,然后给定X=x1X = x_{1}之后,我们有

L(μ∣x1,σ2)=12πσ2exp⁡(−12⋅(x1−μ)2σ2).\begin{aligned} L(\mu \mid x_{1}, \sigma^{2}) &= \frac{1}{\sqrt{2\pi\sigma^{2}}}\exp{\left(-\frac{1}{2}\cdot\frac{(x_1-\mu)^{2}}{\sigma^{2}}\right)}. \end{aligned}

然后我们在μ∈R\mu\in \mathbb{R}上求积分

∫RL(μ∣x1,σ2)dμ=∫R12πσ2exp⁡(−12⋅(x1−μ)2σ2)dμ=t=x1−μ12πσ2∫+∞−∞exp⁡(−12⋅t2σ2)(−dt)=12πσ2∫Rexp⁡(−12⋅t2σ2)dt\begin{aligned} \int_{\mathbb{R}} L(\mu \mid x_{1}, \sigma^{2}) d\mu &= \int_{\mathbb{R}} \frac{1}{\sqrt{2\pi\sigma^{2}}}\exp{\left(-\frac{1}{2}\cdot\frac{(x_1-\mu)^{2}}{\sigma^{2}}\right)} d\mu \\ &\overset{t=x_{1}-\mu}{=} \frac{1}{\sqrt{2\pi\sigma^{2}}}\int_{+\infty }^{-\infty }\exp{\left(-\frac{1}{2}\cdot\frac{t^{2}}{\sigma^{2}}\right)} (-dt) \\ &= \frac{1}{\sqrt{2\pi\sigma^{2}}}\int_{\mathbb{R}} \exp{\left(-\frac{1}{2}\cdot\frac{t^{2}}{\sigma^{2}}\right)} dt \end{aligned}

对于∫Rexp⁡(−12⋅t2σ2)dt\int_{\mathbb{R}}\exp{\left(-\frac{1}{2}\cdot\frac{t^{2}}{\sigma^{2}}\right)} dt, 我们先求

∫R∫Rexp⁡(−t122σ2)exp⁡(−t222σ2) dt1dt2=∫R∫Rexp⁡(−t12+t222σ2) dt1dt2=∫02πdθ∫0+∞r⋅exp⁡(−r22σ2) dr=2π⋅(−σ2)∫0+∞exp⁡(−r22σ2) d(−r22σ2)=−2πσ2exp⁡(−r22σ2)∣0+∞=2πσ2\begin{aligned} & \quad \int_{\mathbb{R}}\int_{\mathbb{R}} \exp{\left( -\frac{t_{1}^{2}}{2\sigma^{2}}\right)}\exp{\left( -\frac{t_{2}^{2}}{2\sigma^{2}}\right)}\, dt_{1}dt_{2} \\ &= \int_{\mathbb{R}}\int_{\mathbb{R}} \exp{\left( -\frac{t_{1}^{2}+t^{2}_{2}}{2\sigma^{2}}\right)}\, dt_{1}dt_{2} \\ &= \int_{0}^{2\pi}d\theta\int_{0}^{+\infty } r \cdot\exp{\left( - \frac{r^{2}}{2\sigma^{2}} \right)}\, dr \\ &= 2\pi\cdot (-\sigma^{2}) \int_{0}^{+\infty } \exp{\left( - \frac{r^{2}}{2\sigma^{2}} \right)} \, d\left(-\frac{r^{2}}{2\sigma^{2}}\right) \\ &= -2\pi\sigma^{2} \exp{\left( - \frac{r^{2}}{2\sigma^{2}} \right)} \Bigg\vert^{+\infty }_{0} \\ &= 2\pi\sigma^{2} \end{aligned}

所以有

∫Rexp⁡(−12⋅t2σ2)dt=2πσ2\int_{\mathbb{R}}\exp{\left(-\frac{1}{2}\cdot\frac{t^{2}}{\sigma^{2}}\right)} dt = \sqrt{2\pi\sigma^{2}}

将结果代回∫RL(μ∣x1,σ2)dμ\int_{\mathbb{R}} L(\mu \mid x_{1}, \sigma^{2}) d\mu之后,得到

∫RL(μ∣x1,σ2)dμ=12πσ22πσ2=1.\int_{\mathbb{R}} L(\mu \mid x_{1}, \sigma^{2}) d\mu = \frac{1}{\sqrt{2\pi\sigma^{2}}}\sqrt{2\pi\sigma^{2}} = 1.

不拘泥于高斯分布,我么可以用

L(θ∣x1)L\left(\theta \mid x_{1}\right)

来表示似然函数。

极大似然

回到MLE的话题上,当我们有似然函数L(θ∣x1)L\left(\theta \mid x_{1}\right) 之后,我们可以找到使L(θ∣x1)L\left(\theta \mid x_{1}\right)最大的θ∗\theta^{*},也就是对x1x_1这个观测值的支持程度达到最大。 此时,我们认为给定x1x_{1}的时候,θ∗\theta^{*}是最优的估计值。

我们换一个角度来直觉上的理解支持程度达到最大这个表述。 我们之前有讨论过L(θ∣x1)L\left(\theta \mid x_{1}\right)也许并不满足归一化,所以不能直接称作概率。 但是如果我们将似然函数改造为

L~(θ∣x1)=L(θ∣x1)∫θL(θ∣x1)dθ,\widetilde{L}\left(\theta \mid x_{1}\right) = \frac{L\left(\theta \mid x_{1}\right)}{\int_{\theta}L\left(\theta \mid x_{1}\right) d\theta},

我们会得到形式上相似的参数的密度函数。

利用这个函数,我们的θ∗\theta^{*}应该为

θ∗=arg⁡max⁡θL~(θ∣x1)=arg⁡max⁡θL(θ∣x1)∫θL(θ∣x1)dθ=arg⁡max⁡θL(θ∣x1).\begin{aligned} \theta^{*} &= \arg \max_{\theta} \widetilde{L}\left(\theta \mid x_{1}\right) \\ &= \arg \max_{\theta} \frac{L\left(\theta \mid x_{1}\right)}{\int_{\theta}L\left(\theta \mid x_{1}\right) d\theta} \\ &= \arg \max_{\theta} L\left(\theta \mid x_{1}\right). \end{aligned}

最后一步的推导主要是因为∫θL(θ∣x1)dθ\int_{\theta}L\left(\theta \mid x_{1}\right)d\theta是与θ\theta无关的一个值,所以有

L(θ∣x1)∝L(θ∣x1)∫θL(θ∣x1)dθ.L\left(\theta \mid x_{1}\right) \propto \frac{L\left(\theta \mid x_{1}\right)}{\int_{\theta}L\left(\theta \mid x_{1}\right) d\theta}.

但需要注意的是,L~(θ∣x1)\widetilde{L}\left(\theta \mid x_{1}\right)并不是我们接下来要讲的后验分布,

在做统计估计的时候,当只有一个样本的时候,估计很可能是不准确的,所以我们要大量采样。 假设我们进行独立随机采样得到的样本为x={xi}N\boldsymbol{x}=\{x_{i}\}_{N}。 给定每一个样本我们有

{L(θ∣xi)}N.\begin{aligned} \left\{L\left(\theta \mid x_{i}\right)\right\}_{N}. \end{aligned}

进一步因为是随机采样,我们有

L(θ∣x)=L(θ∣{x1,x2,…,xN})=∏iNL(θ∣xi).\begin{aligned} L\left(\theta \mid \boldsymbol{x}\right) &= L\left(\theta \mid \{x_{1}, x_{2}, \dots, x_{N}\}\right) \\ &=\prod_{i}^{N} L\left(\theta \mid x_{i}\right). \end{aligned}

连乘的计算很多时候并不方便,我们可以通过引入一个单增的log函数来进行转化。 最后θ∗\theta^{*}的估计可以写作

θ^∗=arg⁡max⁡θlog⁡(L(θ∣x))=arg⁡max⁡θlog⁡(∏iNL(θ∣xi))=arg⁡max⁡θ∑iNlog⁡(L(θ∣xi)).\begin{aligned} \widehat{\theta}^{*} &= \arg \max_{\theta} \log\left( L\left(\theta \mid \boldsymbol{x}\right)\right)\\ &= \arg \max_{\theta} \log \left(\prod_{i}^{N} L\left(\theta \mid x_{i}\right) \right)\\ &= \arg \max_{\theta} \sum_{i}^{N}\log \left(L(\theta\mid x_{i})\right). \end{aligned}

MAP

接下来我们讲一下最大后验。 假设我们现在有一组采样数据x\boldsymbol{x},我们像估计这组数据背后的分布的参数θ\theta。

在MLE中我们直接使用似然函数L(θ∣x)L\left(\theta \mid \boldsymbol{x}\right)来进行估计。 我们对θ\theta的估计完全根据数据x\boldsymbol{x}。 但如果我们对θ\theta其实并不是完全无知呢? 比如说,我捡到一个硬币,我可能会很先入为主的认为如果我抛掷这枚硬币的话,得到正面的概率为12\frac{1}{2}。 如果用MLE的话,接下来我会大量抛硬币然后进行参数估计。注意到在这个过程中,我先入为主的猜测并不会影响MLE的估计。 我想知道我先入为主的猜测是否可以影响估计参数。 如果猜测很准的话,可能对参数估计有极大帮助。如果猜测的不准的话,也没关系,后面大量实验会帮我修正我的猜测。

将我们的猜测引入参数估计的一种方法便是极大后验估计。 我们先引入贝叶斯公式

P(θ∣x)=P(x∣θ)P(θ)P(x)=L(θ∣x)P(θ)P(x),P(\theta \mid \boldsymbol{x}) = \frac{P(\boldsymbol{x} \mid \theta)P(\theta)}{P(\boldsymbol{x})} = \frac{L(\theta \mid \boldsymbol{x})P(\theta)}{P(\boldsymbol{x})},

其中,我的猜测便是P(θ)P(\theta),我们一般把这个分布称为先验分布,或者我更喜欢信念(belief)这个名字。 P(x∣θ)P(\boldsymbol{x}\mid \theta)变为之前介绍过的似然函数。P(x)P(\boldsymbol{x})是x\boldsymbol{x}的概率分布,或者叫作边际似然。 最后,P(θ∣x)P(\theta \mid \boldsymbol{x})被叫做引入信念之后的θ\theta的后验分布。

最大后验顾名思义就是通过

θ∗=arg⁡max⁡θP(θ∣x)=arg⁡max⁡θP(x∣θ)P(θ)P(x),\theta^{*}=\arg \max_{\theta} P(\theta \mid \boldsymbol{x})= \arg \max_{\theta} \frac{P(\boldsymbol{x} \mid \theta)P(\theta)}{P(\boldsymbol{x})},

其中P(x)P(\boldsymbol{x})是一个与θ\theta无关的分布,如在MLE中讲的相似,可以认为P(x)P(\boldsymbol{x})起到一个归一化的作用。 所以,

θ∗=arg⁡max⁡θP(x∣θ)P(θ).\theta^{*}=\arg \max_{\theta} P(\boldsymbol{x} \mid \theta)P(\theta).

同样的,x\boldsymbol{x}是随机独立采样而来的,因此,

θ∗=arg⁡max⁡θP(θ)∏iNP(xi∣θ)=arg⁡max⁡θP(θ)(∏iNL(θ∣xi)).\theta^{*}=\arg \max_{\theta} P(\theta)\prod_{i}^{N} P(x_{i} \mid \theta) = \arg \max_{\theta} P(\theta) \left(\prod_{i}^{N} L\left(\theta \mid x_{i}\right)\right).

可以看到,比起MLE,MAP的优化函数中多了P(θ)P(\theta)的部分。 注意,似然函数和信念都是我们事先假设的。


Author: CAI Ming
Reprint policy: All articles in this blog are used except for special statements CC BY 4.0 reprint policy. If reproduced, please indicate source CAI Ming !
评论
  TOC