参数估计的两大法宝:最大似然与贝叶斯估计的对比分析

探讨最大似然估计与贝叶斯估计在参数估计中的应用及优缺点。

原文标题:参数估计方法的比较 | 最大似然与贝叶斯估计

原文作者:数据派THU

冷月清谈:

本文深入探讨了参数估计中两种常用方法:最大似然估计(MLE)和贝叶斯估计。最大似然估计通过观测数据样本来推测总体分布的参数,常用于数据量较少时,但可能带来偏差。而贝叶斯估计则结合先验知识来获得更准确的结果,尤其在样本不足时更为有效。文章举例说明如何用这两种方法估计森林中树木高度的分布,并讨论它们的适用场景及各自的优缺点。最终,介绍了在模型预测时如何选择使用MLE或贝叶斯估计的依据,帮助读者更好地理解参数估计的方法与应用。

怜星夜思:

1、在实际应用中,如何选择使用最大似然估计或贝叶斯估计?
2、贝叶斯估计中的先验知识是如何影响结果的?
3、在特定领域,比如医学研究,MLE和贝叶斯的使用有什么不同?

原文内容

图片
来源:MEPGT

本文约3100字,建议阅读6分钟

本文为你介绍一种估计方法的比较。


最大似然与贝叶斯估计



机器学习的核心是模型。我们如何表示数据?我们可以通过哪些方式对数据进行分组进行比较?我们的数据来自什么分布或模型?这些问题(以及许多其他问题)促进数据处理,但后者是参数估计的基础。


最大似然估计(MLE)和贝叶斯估计可能是参数估计中使用最广泛的两种方法,通过该过程,给定一些数据,我们能够估计产生该结果的模型数据。为什么这很重要?在现实世界中收集的数据几乎永远不能代表整个群体(想象一下我们需要收集多少!),因此通过从观察到的样本群体中估计分布参数,我们可以深入了解看不见的数据。


作为本文的先决条件,首先了解微积分和概率论中的概念非常重要,包括联合概率和条件概率、随机变量和概率密度函数。


参数估计涉及近似分布的参数,这意味着通常预先假设分布类型,这决定了将估计的未知参数是什么(泊松分布为   ,高斯分布为   和   )。在本文中使用的示例将是高斯。


示例问题:假设想了解森林中树木高度的分布,作为树木健康纵向生态研究的一部分,但本年度唯一可用的数据是徒步旅行者记录的 15 棵树的样本。要回答的问题是:“我们可以用什么分布来模拟整个森林的树木高度?”


图片
观测数据的直方图(15 个样本),以及可能产生该数据的 4 个高斯曲线示例。


符号注释


   是未知变量,在我们的高斯情况下,   ,   是所有观测数据,其中   


似然函数


MLE 和贝叶斯估计的(几乎唯一)共同点是它们对所见数据(在我们的例子中是 15 个样本)的可能性的依赖。似然描述了每个可能的参数值产生我们观察到数据的概率,由下式给出:


似然函数


基于独立且同分布的随机变量假设,所有数据样本都被认为是独立的,因此我们能够放弃混乱的条件概率。


让我们回到我们的问题。所有这一切都需要知道我们 15 个样本的值,未知参数   的每种组合产生这组数据的概率是多少?通过使用高斯分布函数,我们的似然函数为:


   上的似然函数


最大似然估计(MLE)


既然知道了似然函数,计算最大似然解就非常容易了。就在公式里。为了获得估计参数   ,我们所要做的就是找到似然函数最大值的参数。换句话说,   的什么组合展示了上图似然函数顶部最亮的黄点?


为了找到这个值,我们需要应用一些微积分和导数的知识:


(有问题的)   的计算


可能已经注意到,我们遇到了一个问题。上述求导可能会变得非常复杂,我们希望避免这种情况。幸运的是,我们有办法解决这个问题:改为使用对数似然函数。回想一下,(1)乘积的对数是对数之和,(2)取任何函数的对数可能会改变值,但不会改变该函数最大值出现的位置,因此会给我们相同的解决方案。


使用对数似然正确计算   


事实证明,对于高斯随机变量,MLE 解只是观测数据的均值和方差。因此,对于我们的问题,对树高分布进行建模的 MLE 解决方案是高斯分布,   =152.62 且   =11.27。


贝叶斯估计


好消息!为了帮助分析这片森林中树高的分布,你的同事设法通过数据档案并挖掘出过去 10 年森林中树高的平均值。有了这些信息,现在还可以使用贝叶斯估计来解决这个问题。


贝叶斯估计背后的中心思想是,在我们看到任何数据之前,我们已经对其来源的分布有了一些先验知识。这种先验知识通常来自经验或过去的实验。然而,在深入了解该方法的本质之前,掌握贝叶斯定理的概念至关重要。


贝叶斯定理


希望知道或至少听说过概率背景下的贝叶斯定理,我们希望找到一个事件以另一事件为条件的概率。在这里,我希望以一种能够深入了解贝叶斯参数估计和先验重要性的方式构建它。


贝叶斯定理


为了说明这个方程,请考虑以下示例:事件A =“今天早些时候下雨了”,事件B =“草是湿的”,我们希望计算P(A|B),即早些时候下雨的概率,因为草湿了。为此,我们必须计算P(B|A)、P(B)和P(A)。条件概率P(B|A)表示在下雨的情况下草是湿的概率。换句话说,考虑到下雨的情况,草地被弄湿的可能性。


P(A)的值被称为先验:无论草是否湿(在知道草的状态之前),下雨的概率。这种先验知识很关键,因为它决定了我们对可能性的加权程度。如果我们在不经常下雨的地方,我们会更倾向于将湿草归因于雨以外的其他因素,例如露水或洒水器,这是由较低的 P(A) 值捕获的。然而,如果我们在一个经常下雨的地方,潮湿的草很可能是雨的byproduct,高P(A)会反映出这一点。


剩下的就是P(B),也称为证据:草是湿的概率,该事件充当下雨事实的证据。该值的一个重要属性是它是最终概率的归一化常数,正如在贝叶斯估计中看到的那样,我们用归一化因子代替传统的“证据”。


用于贝叶斯估计的方程与贝叶斯定理的形式相同,主要区别在于我们现在使用模型和概率密度函数 (pdf) 代替数值概率。


贝叶斯估计


首先,似然性等于 MLE 中使用的似然性,其次,贝叶斯定理中通常使用的证据(在本例中将转换为P(D))被替换为分子的积分。这是因为 (1) P(D)实际计算起来极其困难,(2) P(D)不依赖于   ,而这才是我们真正关心的,(3) 它作为归一化因子的可用性可以代入积分值,保证后验分布的积分为1。


回想一下,为了求解 MLE 中的参数,我们采用对数似然函数的    来获得   的数值解。在贝叶斯估计中,我们计算参数空间上的分布,称为后验 pdf,表示为   。该分布表示在考虑了观察到的数据和先验知识后,我们相信每个参数值是生成数据的参数值的程度。


先验   也是一种分布,通常与后验分布属于同一类型。我不会详细介绍这一点,但是当先验的分布与后验的分布匹配时,它被称为共轭先验,并且具有许多计算优势。我们的示例将使用共轭先验。


让我们再次回到有关树高的问题。除了野外工作者记录的 15 棵树之外,我们现在还掌握了过去 10 年的树高。


图片

过去 10 年的树高


假设今年的树高应该落在前一年所有树高的分布中,我们的先验是高斯分布, 图片

 

剩下的就是计算我们的后验概率密度函数。对于此计算,假设固定   。实际上,我们不会以这种方式解决贝叶斯估计,但是乘以不同维度的高斯(例如我们的可能性和先验)是非常复杂的,相信在这种情况下简化计算足以理解该过程并且更容易可视化。

将单变量似然与先验相乘,然后对结果进行归一化,我们最终得到后验高斯分布, 图片

图片
似然、先验和后验分布


这就是贝叶斯估计的结果。正如所看到的,后验分布考虑了先验分布和在它们之间找到中间立场的可能性。根据新的观察到的数据,当前的后验成为新的先验,并且根据新数据给出的可能性计算新的后验。


预测


我们有模型来描述我们的数据,那么我们可以用它们做什么呢?这些模型的最重要用途是对看不见的未来数据进行预测,这本质上告诉我们观察结果来自此分布的可能性有多大。这里不会明确地对示例进行计算,但如果愿意的话,可以使用下面的公式。


MLE预测


MLE 预测


最大似然预测利用密度函数中潜在变量的预测来计算概率。例如,在高斯情况下,我们使用   的最大似然解来计算预测。


贝叶斯预测


贝叶斯预测


正如可能猜到的那样,贝叶斯预测稍微复杂一些,它使用后验分布和随机变量   上的分布来生成新样本的预测。


  • 何时使用 MLE?贝叶斯估计?


我们已经看到了两种参数估计方法之间的计算差异,现在一个自然的问题是:我什么时候应该使用其中一种而不是另一种?虽然选择方法时没有硬性规定,但希望可以使用以下问题作为粗略指南:


  • 使用了多少数据?


最大似然估计仅依赖于观测数据的结果,因此在数据极少时容易产生偏差。考虑一个实验,将一枚均匀的硬币抛掷 3 次,每次抛掷都会出现正面。虽然知道一枚公平的硬币正面朝上的概率为 50%,但最大似然估计告诉P(正面) = 1,P(反面) = 0。在观察到的数据稀少的情况下,贝叶斯估计结合了先验知识,例如知道一枚公平的硬币是 50/50,可以帮助获得更准确的模型。


  • 有可靠的先验吗?


正如刚才提到的,先验在某些情况下可以使模型受益。然而,不可靠的先验可能会导致高度偏差的模型偏差,需要大量可见数据来矫正。如果使用的是先验,请确保它们定义良好并且包含与要解决的问题相关。如果不确定先验的可靠性,MLE 可能是更好的选择,特别是如果有足够的数据量。


  • 计算资源有限吗?


本文中反复出现的主题是贝叶斯计算比 MLE 的计算更复杂。凭借现代计算能力,这种差异可能无关紧要,但如果确实发现自己受到资源限制,MLE 可能是最佳选择。


  • 一些有趣的属性


最后,在讨论了 MLE 和贝叶斯估计之间的许多差异之后,提供这两种方法之间的一些有趣的联系。


如果贝叶斯先验在所有值上都是一致的,则贝叶斯预测与 MLE 预测将非常相似。


如果贝叶斯先验是明确定义的并且在所有点都非零,那么当观测到的数据量接近无穷大时,MLE 和贝叶斯预测将收敛到相同的值。


编辑:于腾凯
校对:林亦霖

我觉得先验就像一把双刃剑,能帮助改善模型,但如果不精准就会导致估计偏离真实情况。所以选择一个成熟的先验知识是非常重要的!

这主要取决于数据的数量和质量吧。如果数据不多,MLE可能会给出很大偏差,但贝叶斯可以利用先验知识补救。不过,如果你手头可用的数据量较大,那MLE可能是足够的选择。

如果我有可靠的先验,我肯定会选贝叶斯估计。因为它能结合过去的信息,更好地预测未来。如果我不太确定先验的可信度,可能就会更倾向于MLE。

选择的时机还得看计算能力。贝叶斯估计计算复杂,对资源要求高,MLE相对简单不少。尤其在计算资源有限的情况下,MLE比较实用。

先验知识可以极大地影响模型的推断,如果先验非常精准,得到的结果会更加可靠,反之则可能导致错误的结论,特别是在数据量少的情况下。

乍一看,贝叶斯似乎依赖于个人见解,但在所有统计分析中,先验知识的存在是不可避免的。有时候甚至是先验的效果大于数据本身!

在医学研究里,通常需要更严谨的模型,因此贝叶斯估计可能更常见,因为它能够结合历史临床数据去改进新治愈率的估计。

MLE也有用,特别是当样本量庞大时,那时它的计算效率往往占优势。但在权衡风险和决策时,贝叶斯估计会给出更全面的图景。

不同的研究背景和数据采集方式也会影响选择。在临床实验中,贝叶斯可以帮助医生实时调整治疗方案,而MLE有时候仅能给出典型的数据趋势。