欢迎您访问 最编程 本站为您分享编程语言代码,编程技术文章!
您现在的位置是: 首页

理解概率论中的两大方法:最大似然估计 (MLE) 和最大后验估计 (MAP)

最编程 2024-07-25 14:53:20
...

概率与统计的区别

  • 概率研究的问题是一个模型和它的参数已知的情况下,怎么去预测这个模型产生的结果的特性(如均值,方差,协方差等)
  • 统计研究的问题是在已有的大量的数据的情况下,推断产生这堆数据的模型及其参数.

贝叶斯公式

P ( A ∣ B ) = P ( B ∣ A ) P ( A ) P ( B ) P(A|B)=\frac{P(B|A)P(A)}{P(B)} P(AB)=P(B)P(BA)P(A)

  • P ( A ∣ B ) P(A|B) P(AB)在B发生的情况下,A发生的概率(后验概率).体现了某个事件发生后对于证据的确信度,即确实是由A导致B发生的概率;
  • P ( A ) P(A) P(A)情况 A A A发生的概率(先验概率),之所以称之为先验是因为这个概率通常是我们基于经验估计或者统计得出的一个概率;
  • P ( B ∣ A ) P(B|A) P(BA)在A发生的情况下,B发生的概率;

值得一提的是,这里 P ( B ∣ A ) P(B|A) P(BA)出现的概率大不一定导致 P ( A ∣ B ) P(A|B) P(AB)就大,还需要 P ( A ) P(A) P(A)也大.例如一个模型本身不太可能选择某组参数,那么即便这组参数很有可能会产出我们想要的结果,但是也不能说是由这套参数产生这个结果的可能性大,因为本身A的概率拉低了整体发生的概率(这是后续MAP的思想依据).

假定模型已定的情况下,其模型参数为某特定参数的事件为 A A A,该模型参数某特定结果的事件为 B B B,则 P ( A ∣ B ) P(A|B) P(AB)表示在获得该组数据的情况下,模型是这一套参数的概率; P ( B ∣ A ) P(B|A) P(BA)表示基于经验,分析或者别的什么(扯淡的操作),我们认为这套参数下产生结果B的概率

似然函数(Likehood Function)

一菜两吃的 P ( x ∣ θ ) P(x|\theta) P(xθ)

  • 如果 θ \theta θ已知, x x x是变量,则它是概率函数(由因导果);
  • 如果 x x x已知, θ \theta θ未知,那它是似然函数(由果导因);

最大似然估计(MLP)

假设有一个造币厂生产某种硬币,现在我们拿到了一枚这种硬币,想试试这硬币是不是均匀的。即想知道抛这枚硬币,正反面出现的概率(记为 θ \theta θ)各是多少?

  • STEP1: 获取数据.显然,这是一个由因导果(求模型参数)的问题,为此我们投掷10次硬币,假设出现了结果 x 0 x_0 x0(“反正正正正反正正正反”);
  • STEP2: 确定模型.根据经验,我们假定实验结果 x x x服从二项分布,则 f ( x 0 , θ ) = θ 7 ( 1 − θ ) 3 f(x_0,\theta)=\theta^7(1-\theta)^3 f(x0θ)=θ7(1θ)3,这是一个关于 θ \theta θ的函数;
  • STEP3: 似然估计.绘图求解知 f f f θ = 0.7 \theta=0.7 θ=0.7处取得最大值.因此,我们认为 θ = 0.7 \theta=0.7 θ=0.7是最有可能导致 x 0 x_0 x0出现的.
    最大似然估计

最大后验概率估计(MAP)

与MLE不同的是,MAP是要使后验概率 P ( A ∣ B ) P(A|B) P(AB)最大化,即确实是由 A A A导致 B B B发生的可能性最高.因为贝叶斯公式中的 P ( B ) P(B) P(B)通常是可以从数据中统计得出,所以只需让 P ( B ∣ A ) P ( A ) P(B|A)P(A) P(BA)P(A)这个整体,即 P ( A B ) P(AB) P(AB)最大. 这个思路也是可以理解,毕竟谁也不能说产生结果 B B B就一定是参数 A A A导致的:-)因此,在该例中,按照贝叶斯的想法要使 P ( x 0 ∣ θ ) P ( θ ) P(x_0|\theta)P(\theta) P(x0θ)P(θ)最大.

  • STEP1:获取数据.如前所述.
  • STEP2:确定模型.我们先验地知道 θ = 0.5 \theta=0.5 θ=0.5的概率很大,因此假定 θ ∼ N ( 0.5 , 0.1 ) \theta\sim N(0.5,0.1) θN(0.50.1);同理,假定实验结果 x ∼ B ( 10 , θ ) x\sim B(10,\theta) xB(10θ).
  • STEP3:后验概率估计.计算得其后验概率 P ( x 0 ∣ θ ) P ( θ ) = θ 7 ( 1 − θ ) 3 × 1 2 π × 0. 1 2 e − ( θ − 0.5 ) 2 2 × 0. 1 2 P(x_0|\theta)P(\theta)=\theta^7(1-\theta)^3 \times \frac{1}{\sqrt{2\pi\times 0.1^2}}e^{-\frac{(\theta-0.5)^2}{2\times 0.1^2}} P(x0θ)P(θ)=θ7(1θ)3×2π×0.12 1e2×0.12(θ0.5)2,绘图可知在 θ = 0.558 \theta=0.558 θ=0.558处后验概率最大.
    最大后验概率估计

二者的区别与联系

通过观察MLE和MAP的式子,我们不难发现 f ( x 0 , θ ) f(x_0,\theta) f(x0θ) P ( x 0 ∣ θ ) P ( θ ) P(x_0|\theta)P(\theta) P(x0θ)P(θ)主要的差别在于是否考虑了先验概率 P ( θ ) P(\theta) P(θ)这个因子,或者说MLE简单得将先验概率视为了 P ( θ ) = 1 P(\theta)=1 P(θ)=1,即认为 θ \theta θ是均匀分布的.

所以,需要说服一个贝叶斯学派的相信一个经典统计学派的的论调,你只有做很多的实验来让他信服(即投的次数多了,自然而然就能说明这枚硬币有没有猫腻了).

以上便是自己拜读了参考资料后的一些感悟,不足之处恳请各位批评指正.

参考资料

详解最大似然估计(MLE)、最大后验概率估计(MAP),以及贝叶斯公式的理解

推荐阅读