Alex_McAvoy

想要成为渔夫的猎手

共轭先验分布

References:

【共轭先验分布】

贝叶斯统计的一个核心特点在于,能够设定一个描绘对目标参数经验判断的先验分布,然后将经验判断加入到后续的推理与预测中

但由于任何的分布都可以作为经验分布,因此在计算过程中,难免会遇到由于复杂的先验分布而导致的计算困难问题,为简化计算量,提出了共轭分布(Conjugate Distribution)这一概念,即先验分布和后验分布同属一类的分布

现假设投掷一枚硬币 $1$ 次,随机变量 $X=0,1$ 分别代表出现正面朝下、朝上的结果,且 $X$ 服从参数为 $\theta$ 的伯努利分布 $X\sim B(1,\theta)$,同时假设目前没有关于 $\theta$ 的任何经验

在这种情况下,设定一个 $p(\theta)$ 为均匀分布 $p(\theta)=1$ 可能是一个较为合理的选择

现在,给定一个观察值 $x$,由于给定 $\theta$ 下伯努利分布的似然函数为:

那么,利用贝叶斯推断中参数更新先验分布的方法,可以得到 $\theta$ 的后验分布:

根据定义可以发现:$\theta$ 的后验分布属于贝塔分布 $Be(\alpha,\beta)$,如果用来更新分布的数据 $x=1$,那么计算得到的 $\theta$ 的后验分布为 $Be(2,1)$,如果用来更新分布的数据 $x=0$,那么计算得到的 $\theta$ 的后验分布为 $Be(1,2)$,此外 $Be(1,1)=1$,实际上就是均匀分布

也就是说,参数 $\theta$ 的先验分布 $p(\theta)$ 和后验分布 $p(x|\theta)$ 都属于 $Be(\alpha,\beta)$ 分布

这样类似的情况在贝叶斯统计中很多,称这样的先验分布和后验分布为共轭分布,称能够更新出共轭后验分布的先验分布为这个似然函数的共轭先验(Conjugate Prior)

关于贝塔分布的详细内容,可见:常见概率分布

【共轭先验分布的选择】

从上例中可以进一步得出,在给定服从伯努利分布 $B(1,\theta)$ 的数据样本 $X=(x_1,x_2,\cdots,x_n)$ 与某个共轭先验分布 $\theta\sim Be(\alpha,\beta)$ 时,一定可推出后验分布

也就是说,永远可以从贝塔分布更新到贝塔分布

换句话说,共轭分布使得先验分布和后验分布的形式相同,一方面相同形式的分布能够符合直观,另一方面是可以形成一个先验链(Priori Chain),即现在的后验分布可以作为下一次计算的先验分布,如果形式相同,就可以形成一个链条,便于对后验分布进行更新

那么关键问题就是,如何选取合适的共轭先验分布?

一般来说,共轭先验分布应满足以下两点:

  1. 描绘对目标参数的经验判断
  2. 量化对这个经验判断的信心

举例来说,我们知道投掷一枚硬币正面朝上的概率约为 $0.5$,因此在直觉上会希望先验分布的数学期望 $E(\theta)=0.5$

在贝塔分布中,有 $EX=\frac{\alpha}{\alpha+\beta}$,那么对数学期望的这个要求,就相当于要求贝塔分布的两个参数满足 $\alpha=\beta$,此时实际上有非常多的选择

从 $\theta$ 的后验分布

中可以发现,当引入 $n$ 个数据来更新参数 $\theta$ 时,$\alpha+\beta$ 的总和实际上增加了 $n$

那么可以通过设定先验分布中 $\alpha+\beta$ 的大小来量化对经验判断的信心,例如设定 $\alpha+\beta=1$,即对经验判断的信息“价值一个数据”,此时就可得到合适的共轭先验分布

在贝叶斯统计中,称这样一个量化经验判断的信心的值为有效样本量(Effect Sample Size),这个值是人为确定的,其也一定程度上决定了需要使用多少数据才能够有效地影响参数的后验分布

进一步组,在知道使用 $n$ 个数据更新共轭先验分布 $Be(\alpha,\beta)$ 后,可以得到 $\theta$ 的后验数学期望为:

更进一步,可将后验数学期望整理为:

可以看到,参数 $\theta$ 的后验数学期望实际上等价于:

也就是说,在该例中,当确定了先验分布,即确定有效样本量后,如果用于更新的数据量 $n<\alpha+\beta$,那么后验数学期望会更多取决于设定的先验分布,反之,后验数学期望会更多地取决于样本数据

这个现象的现实意义在于:当对经验判断非常有信心时,便需要更多的数据来“撼动”这样的先验判断

需要注意的是,共轭先验分布有诸多可能,并非仅有贝塔分布为共轭先验分布

【实例】

下面给出一个使用共轭先验分布进行贝叶斯推断的例子

假设有一枚硬币,并且想要推断出扔硬币得到正面的概率 $P(H)$ 是多少

现用 $\theta$ 表示这个概率,通过反复扔这枚硬币可以得到一个由正面或反面结果组成的观测序列 $D$

同时假设在开始扔硬币前,对 $\theta$ 的分布 $P(\theta)$ 有如下的先验猜想:$\theta$ 可以是 $0$ 到 $1$ 范围内的任何取值,且符合连续均匀分布,即 $\theta=0$ 说明该硬币两面都不是头像,$\theta=1$ 说明该硬币两面都是头像,$\theta=0.5$ 说明该硬币一面头像一面非头像且质地均匀

在这个先验猜想下,$\theta$ 的先验概率密度为 $0\sim 1$ 之间的一条水平线

当投掷该硬币时,得到正面的概率为 $\theta$,得到反面的概率为 $1-\theta$,因此若投掷 $n$ 次,得到 $m\leq n$ 次正面的概率实际上是一二项分布,且满足:

而当 $Beta(1,1)=1$ 时,实际上就是均匀分布,那么当先验满足参数为 $\alpha$ 和 $\beta$ 的贝塔分布时,由贝叶斯定理可知,后验概率满足:

可见此时后验概率满足 $\alpha+m$ 和 $\beta+n-m$ 的贝塔分布

可见,先验概率和后验概率两者均属于贝塔分布,它们是共轭分布

下面开始掷硬币,假设扔了两次后,得到两次头像,即 $n=m=2$,根据贝叶斯推断,可得关于 $\theta$ 的更新后的后验概率密度函数为 $Be(3,1)$,如下图所示,当连续看到两次为头像时,开始倾向于认为 $\theta$ 的取值越是接近 $1$ 越是有可能的

假设扔了 $10$ 次后得到 $8$ 次正面,扔了 $20$ 次后得到了 $11$ 次正面,根据结果,不断更新 $\theta$ 的后验分布,当 $10$ 次中有 $8$ 次正面时,$\theta$ 的后验概率密度函数为 $Be(9,3)$,此时会认为这个硬币很有可能是不公平的,即正面和反面出现的概率不同,而当 $20$ 次中出现 $11$ 次正面时,$\theta$ 的后验概率密度函数为 $Be(12,10)$,认知会再次根据新的结果得到修正,开始认为这个硬币可能是公平的了

随着继续试验,假设扔了 $50$ 次后得到 $27$ 次正面,扔了 $500$ 次后得到 $232$ 次正面,不断更新 $\theta$ 的后验分布,$\theta$ 的后验概率密度函数分别为 $Be(28,24)$ 和 $Be(233,269)$,随着越来越多的新结果的出现,对于 $\theta$ 的不确定性的认知越来越清晰,对于 $\theta$ 的不同取值的信心越来越高

如下图所示,随着 $\theta$ 的后验分布 $P(\theta|D)$ 越来越窄($\theta$ 的标准差越来越小),就越来越有把握说 $\theta$ 最有可能的取值是 $0.5$ 附近

这个例子完美的展示了贝叶斯推断的强大,一开始对于未知量 $\theta$ 的猜测有非常大的不确定性(先验是 $U(0,1)$),而随着越来越多的观测值的出现,通过迭代使用贝叶斯定理,逐步细化、完善对 $\theta$ 的不确定性的认知,最终得到了关于 $\theta$ 的不确定性的非常自信的后验分布,即:$\theta$ 的分布以 $0.5$ 为中心,标准差非常小,它最有可能的取值就是 $0.5$

感谢您对我的支持,让我继续努力分享有用的技术与知识点!