贝叶斯分析助你成为优秀的调参侠:先验和似然对后验的影响
上一节介绍了科学的研究方法,先验、似然、后验以及如何使用 MCMC 方法中的 Metropolis-Hastings 方法从模型参数  满足的非归一化后验分布抽样。


这一节以一个具体的例子介绍先验和似然对后验的影响。

学习内容


  • 举例:扔硬币实验

  • 扔硬币实验的先验

  • 扔硬币实验的似然函数与后验分布

  • 先验与测量如何影响后验分布

  • 使用 MCMC 算法从后验分布抽样

举例:扔硬币实验


这里以扔硬币实验深入介绍先验、似然和后验。

如果一个人投币 10 次,发现 7 次正面朝上,

问:如果投币无数次,正面朝上的概率  是多少?

频率学派的会说:概率为 ,其中 k 是 n 次投币中正面朝上的次数。

但只有当投币次数无穷多的情况下可以这样算,只投 10 次,总不能说  吧?

贝叶斯学派的会说,我们需要算个后验概率

这是一个条件概率,表示 n 次投币观测到 m 次正面向上的情况下, 所满足的分布。


  • m out of n 表示实验数据

  •  表示模型参数,待定


根据前一节介绍,只需要一个非归一化的贝叶斯公式,

扔硬币实验的先验


上面式子中  表示先验(a prior)。


先验指一个人根据过去经验,脑海中对某事件发生的概率估计(或信仰 Belief)。


对于一枚硬币,估计大部分人会认为正面向上的概率为 50%, 即  或写成:

如果做了 10 次投币实验,7 次正面朝上,部分人可能会完全改变信仰,认为

另一部分人可能认为  在 0.5 和 0.7 之间,满足某种分布。


在先验概率未知时,可以用 Beta 分布函数来表示。忽略归一化常数,

 是 Beta 分布的两个参数,改变这两个参数,Beta 分布会有很多不同的形状。


下面可视化一下 Beta 函数的表示能力,(注意代码接上一节)

上面第一行最左边这张图对应 ,此时 Beta 分布是均匀分布,即某人相信硬币正面朝上的概率  都一样。


第一行中间这张图对应 ,此时 Beta 分布是 U 型,表示有另一人相信硬币被做了手脚,要么正面朝上的概率非常大 ,要么反面朝上的概率非常大,

第一行右边这张图对应 ,此时 Beta 分布是钟型,表示还有人相信硬币没大问题,正面朝上概率为 50%()的可能最大,也有其它可能,   函数。

下面一行对应偏到一边的先验。

无论是哪种先验,经过多次实验,随着不确定性的减少,大脑会逐渐调整对这枚硬币正面朝上概率的估计。

后面会调整先验的参数 ,观察先验对后验分布的影响。


扔硬币实验的似然与后验


做 n 次实验有 m 次正面朝上,与正面朝上概率为  的模型的似然函数为,

即二项分布函数(Binomial distribution)。


二项分布很特殊,一般情况下,我们并不知道模型输出与实验数据的似然函数(likelihood)如何定义。一个比较常用的似然函数是,

其中  是归一化系数,在贝叶斯分析中不重要。


后面的 exp 函数是一个多变量的正态分布函数,方差  里保存模型或数据的不确定性。

选择了 Beta 分布函数做先验,知道了似然函数是二项分布,接下来就可以定义扔硬币实验的后验分布,

后验分布同时受到先验分布参数  的影响以及测量结果  的影响。

先验和测量如何影响后验分布

接下来我们改变先验的参数 ,看看对后验分布的影响。


第一组,实验 110 次,55次正面向上。先验(prior)是虚线,中心在 0.5,但有很宽的分布,后验(posterior)分布是实线,宽度比较窄,表示测量减小了不确定度。频率(frequency)等于 55/110。

第二组,观测数据不变,先验参数为 。先验( Prior ) 偏向右边,而后验分布的中心不在频率(frequency)处,微微偏向先验。如果选 ,先验和后验都会偏向左边。

第三组,观测数据变少,做 20 次实验,10 次正面朝上。先验参数仍为 ,即初始信仰为正面朝上的概率很大。此时可以看到先验对后验的影响增大。后验向先验靠近更多。

总结一下:


  • 后验分布的中心一般在先验和频率之间

  • 测量次数少时,先验对后验的影响比较大

  • 测量次数很多时,先验的影响可忽略不计

    使用 MCMC 算法从后验分布抽样

    接下来,就要对投硬币任务, 满足的后验分布函数进行抽样,找到对于给定的实验观测,最可能的  的值以及  的分布。

    ▲ 对投硬币任务,正面朝上概率满足的后验分布抽样。

    代码如下:


总结


这一节以一个扔硬币任务,更加详细的介绍了何为先验,以及先验、测量对后验分布的影响。使用前一节引入的 MCMC 算法,对非归一化的后验分布抽样。推荐大家在一个具体的物理模型调参任务上走一遍流程,会对贝叶斯推理和 MCMC 有更深刻的认识。

如果物理模型运行速度很慢,可使用 Latin Cube 方法在参数空间取点,使用 Gauss Process Emulator 对参数空间插值,如果实验的可观测量比较多,还可以使用主成分分析将数据降维。LBNL 的 Ke WeiYao 博士曾到我们实验室给过一个贝叶斯分析的讲座,介绍了很多这方面的知识,这一节很多内容借鉴了他开源的 jupyter-notebook。


登录用户可以查看和发表评论, 请前往  登录 或  注册
SCHOLAT.com 学者网
免责声明 | 关于我们 | 用户反馈
联系我们: