先验概率、后验概率以及共轭先验

在贝叶斯学派的观点中,先验概率、后验概率以及共轭分布的概念非常重要。而在机器学习中,我们阅读很多资料时也要频繁地跟他们打交道。所以理清这些概念很有必要。

欢迎关注白马负金羁的博客 http://blog.csdn.net/baimafujinji,为保证公式、图表得以正确显示,强烈建议你从该地址上查看原版博文。本博客主要关注方向包括:数字图像处理、算法设计与分析、数据结构、机器学习、数据挖掘、统计分析方法、自然语言处理。


贝叶斯定理:一个例子

其实我们在之前介绍朴素贝叶斯分类器时就介绍过它,如果你有点忘了,这里就通过一个例子来帮你回忆一下。

假设有一所学校,学生中60%是男生和40%是女生。女生穿裤子与裙子的数量相同;所有男生穿裤子。现在有一个观察者,随机从远处看到一名学生,因为很远,观察者只能看到该学生穿的是裤子,但不能从长相发型等其他方面推断被观察者的性别。那么该学生是女生的概率是多少?

用事件 G 表示观察到的学生是女生,用事件 T 表示观察到的学生穿裤子。于是,现在要计算的是条件概率 P(G|T) ,我们需要知道:

  • P(G) 表示一个学生是女生的概率。由于观察者随机看到一名学生,意味着所有的学生都可能被看到,女生在全体学生中的占比是 40% ,所以概率是 P(G)=0.4 。注意,这是在没有任何其他信息下的概率。这也就是先验概率。后面我们还会详细讨论。
  • P(B) 是学生不是女生的概率,也就是学生是男生的概率,这同样也是指在没有其他任何信息的情况下,学生是男生的先验概率。 B 事件是 G 事件的互补的事件,于是易得 P(B)=0.6 。
  • P(T|G) 是在女生中穿裤子的概率,根据题目描述,女生穿裙子和穿裤子各占一半,所以 P(T|G)=0.5 。这也就是在给定 G 的条件下,T 事件的概率。
  • P(T|B) 是在男生中穿裤子的概率,这个值是1。
  • P(T) 是学生穿裤子的概率,即任意选一个学生,在没有其他信息的情况下,该名学生穿裤子的概率。根据全概率公式 P(T)=∑ni=1P(T|Ai)P(Ai)=P(T|G)P(G)+P(T|B)P(B) ,计算得到 P(T)=0.5×0.4+1×0.6=0.8。

根据贝叶斯公式

P(Ai|T)=P(T|Ai)P(Ai)∑ni=1P(T|Ai)P(Ai)=P(T|Ai)P(Ai)P(T)

基于以上所有信息,如果观察到一个穿裤子的学生,并且是女生的概率是

P(G|T)=P(T|G)P(G)P(T)=0.5×0.4÷0.8=0.25.


先验概率(Prior probability)

在贝叶斯统计中,先验概率分布,即关于某个变量 X 的概率分布,是在获得某些信息或者依据前,对 X 之不确定性所进行的猜测。这是对不确定性(而不是随机性)赋予一个量化的数值的表征,这个量化数值可以是一个参数,或者是一个潜在的变量。

先验概率仅仅依赖于主观上的经验估计,也就是事先根据已有的知识的推断。例如, X 可以是投一枚硬币,正面朝上的概率,显然在我们未获得任何其他信息的条件下,我们会认为 P(X)=0.5;再比如上面例子中的,P(G)=0.4。

在应用贝叶斯理论时,通常将先验概率乘以似然函数(Likelihood Function)再归一化后,得到后验概率分布,后验概率分布即在已知给定的数据后,对不确定性的条件分布。


似然函数(Likelihood function)

似然函数(也称作似然),是一个关于统计模型参数的函数。也就是这个函数中自变量是统计模型的参数。对于观测结果 x ,在参数集合 θ 上的似然,就是在给定这些参数值的基础上,观察到的结果的概率 (θ)=P(x|θ) 。也就是说,似然是关于参数的函数,在参数给定的条件下,对于观察到的 x 的值的条件分布。

似然函数在统计推断中发挥重要的作用,因为它是关于统计参数的函数,所以可以用来对一组统计参数进行评估,也就是说在一组统计方案的参数中,可以用似然函数做筛选。

你会发现,“似然”也是一种“概率”。但不同点就在于,观察值 x 与参数 θ 的不同的角色。概率是用于描述一个函数,这个函数是在给定参数值的情况下的关于观察值的函数。例如,已知一个硬币是均匀的(在抛落中,正反面的概率相等),那连续10次正面朝上的概率是多少?这是个概率。

而似然是用于在给定一个观察值时,关于描述参数的函数。例如,如果一个硬币在10次抛落中正面均朝上,那硬币是均匀的(在抛落中,正反面的概率相等)概率是多少?这里用了概率这个词,但是实质上是“可能性”,也就是似然了。


后验概率(Posterior probability)

后验概率是关于随机事件或者不确定性断言的条件概率,是在相关证据或者背景给定并纳入考虑之后的条件概率。后验概率分布就是未知量作为随机变量的概率分布,并且是在基于实验或者调查所获得的信息上的条件分布。“后验”在这里意思是,考虑相关事件已经被检视并且能够得到一些信息。

后验概率是关于参数 θ 在给定的证据信息 X 下的概率,即 P(θ|X) 。若对比后验概率和似然函数,似然函数是在给定参数下的证据信息 X 的概率分布,即 P(X|θ) 。二者有如下关系:

  • 我们用 P(θ) 表示概率分布函数,用 P(X|θ) 表示观测值 X 的似然函数。后验概率定义为 P(θ|X)=P(X|θ)P(θ)P(X),注意这也是贝叶斯定理所揭示的内容。
  • 鉴于分母是一个常数,上式可以表达成如下比例关系(而且这也是我们更多采用的形式):Posterior probability∝Likelihood×Prior probability

Gamma 函数

Gamma函数 Γ(x) 定义为

Γ(x)=∫∞0tx?1e?tdt

通过分部积分法,可以很容易证明Gamma函数具有如下之递归性质

Γ(x+1)=xΓ(x)

也是便很容易发现,它还可以看做是阶乘在实数集上的延拓,即

Γ(x)=(x?1)!

在此基础上,我们还可以定义Beta函数如下

B(a,b)=Γ(a)Γ(b)Γ(a+b)

Beta函数的另外一种定义形式为(注意这两种定义是等价的)

B(a,b)=∫10ta?1(1?t)b?1dt


Beta 分布

之所以提到Gamma函数,那是因为在定义Beta分布时我们会用到它。Beta分布的概率密度函数(PDF)定义为:

Beta(θ|a,b)=Γ(a+b)Γ(a)Γ(b)θa?1(1?θ)b?1

Beta(θ|a,b)=1B(a,b)θa?1(1?θ)b?1

可见,Beta分布有两个控制参数 a 和 b,而且当这两个参数取不同值时,Beta分布的PDF图形可能会呈现出相当大的差异。

Beta 分布的均值和方差分别有下面两式给出

E[θ]var[θ]=aa+b=ab(a+b)2(a+b+1)


共轭分布

我们还是从一个例子讲起。假如你有一个硬币,它有可能是不均匀的,所以投这个硬币有 θ 的概率抛出Head,有 (1?θ) 的概率抛出Tail。如果抛了五次这个硬币,有三次是Head,有两次是Tail,这个 θ 最有可能是多少呢?如果你必须给出一个确定的值,并且你完全根据目前观测的结果来估计 θ,那么显然你会得出结论 θ=35。

但上面这种点估计的方法显然有漏洞,这种漏洞主要体现在实验次数比较少的时候,所得出的点估计结果可能有较大偏差。大数定理也告诉我们,在重复实验中,随着实验次数的增加,事件发生的频率才趋于一个稳定值。一个比较极端的例子是,如果你抛出五次硬币,全部都是Head。那么按照之前的逻辑,你将估计 θ 的值等于 1。也就是说,你估计这枚硬币不管怎么投,都朝上!但是按正常思维推理,我们显然不太会相信世界上有这么厉害的硬币,显然硬币还是有一定可能抛出Tail的。就算观测到再多次的Head,抛出Tail的概率还是不可能为0。

前面介绍的贝叶斯定理或许可以帮助我们。在贝叶斯学派看来,参数 θ 不再是一个固定的值了,而是满足一定的概率分布!回想一下前面介绍的先验概率和后验概率。在估计 θ 时,我们心中可能有一个根据经验的估计,即先验概率,P(θ)。而给定一系列实验观察结果 X 的条件下,我们可以得到后验概率为

P(θ|X)=P(X|θ)P(θ)P(X)

在上面的贝叶斯公式中,P(θ) 就是个概率分布。这个概率分布可以是任何概率分布,比如高斯分布,或者刚刚提过的 Beta 分布。下图是Beta(5,2)的概率分布图。如果我们将这个概率分布作为 P(θ),那么我们在还未抛硬币前,便认为 θ 很可能接近于0.8,而不大可能是个很小的值或是一个很大的值。换言之,我们在抛硬币前,便估计这枚硬币更可能有0.8的概率抛出正面。

虽然 P(θ) 可以是任何种类的概率分布,但是如果使用Beta 分布,会让之后的计算更加方便。我们接着继续看便知道这是为什么了。况且,通过调节 Beta 分布中的 a 和 b,你可以让这个概率分布变成各种你想要的形状!Beta 分布已经很足够表达我们事先对 θ 的估计了。

现在我们已经估计好了 P(θ) 为一个 Beta 分布,那么 P(X|θ) 是多少呢?其实就是个二项(Binomial)分布。继续以前面抛5次硬币抛出3次Head的观察结果为例,X=抛5次硬币3次结果为Head的事件, 则 P(X|θ)=C52θ3(1?θ)2。

贝叶斯公式中分母上的 P(X) 是个Normalizer,或者叫做边缘概率。在 θ 是离散的情况下,P(X) 就是 θ 为不同值的时候,P(X|θ) 的求和。例如,假设我们事先估计硬币抛出正面的概率只可能是0.5或者0.8,那么 P(X)=P(X|θ=0.5)+P(X|θ=0.8),计算时分别将 θ=0.5 和 θ=0.8 代入到前面的二项分布公式中。而如果我们采用 Beta 分布,θ的概率分布在[0,1]之间是连续的,所以要用积分,即

P(X)=∫10P(X|θ)P(θ)dθ

下面的证明就告诉我们:P(θ) 是个 Beta 分布,那么在观测到“X=抛5次硬币中出现3个head”的事件后,P(θ|X) 依旧是个 Beta 分布!只是这个概率分布的形状因为观测的事件而发生了变化。

P(θ|X)=P(X|θ)P(θ)P(X)=P(X|θ)P(θ)∫10P(X|θ)P(θ)dθ=C52θ3(1?θ)21B(a,b)θa?1(1?θ)b?1∫10C52θ3(1?θ)21B(a,b)θa?1(1?θ)b?1dθ=θ(a+3?1)(1?θ)(b+2?1)∫10θ(a+3?1)(1?θ)(b+2?1)dθ=θ(a+3?1)(1?θ)(b+2?1)B(a+3,b+2)=Beta(θ|a+3,b+2)

因为观测前后,对 θ 估计的概率分布均为 Beta 分布,这就是为什么使用 Beta 分布方便我们计算的原因了。当我们得知 P(θ|X)=Beta(θ|a+3,b+2)后,我们就只要根据 Beta 分布的特性,得出 θ 最有可能等于多少了。(即 θ 等于多少时,观测后得到的 Beta 分布有最大的概率密度)。

例如下图,仔细观察新得到的Beta Distribution,和(5)中的概率分布对比,发现峰值从0.8左右的位置移向了0.7左右的位置。这是因为新观测到的数据中,5次有3次是head(60%),这让我们觉得,θ 没有0.8那么高。但由于我们之前觉得 θ 有0.8那么高,我们觉得抛出head的概率肯定又要比60%高一些!这就是Bayesian方法和普通的统计方法不同的地方。我们结合自己的先验概率和观测结果来给出预测。

如果我们投的不是硬币,而是一个多面体(比如筛子),那么我们就要使用 Dirichlet 分布了。使用Dirichlet 分布之目的,也是为了让观测后得到的posterior probability依旧是 Dirichlet 分布。关于 Dirichlet 分布的话题我们会在后续的文章中继续介绍。

到此为止,我们终于可以引出“共轭性”的概念了!后验概率分布(正?于先验和似然函数的乘积)拥有与先验分布相同的函数形式。这个性质被叫做共轭性(Conjugacy)。共轭先验(conjugate prior)有着很重要的作?。它使得后验概率分布的函数形式与先验概率相同,因此使得贝叶斯分析得到了极?的简化。例如,二项分布的参数之共轭先验就是我们前面介绍的 Beta 分布。多项式分布的参数之共轭先验则是 Dirichlet 分布,??斯分布的均值之共轭先验是另?个?斯分布。

总的来说,对于给定的概率分布 P(X|θ),我们可以寻求一个与该似然函数 ,即P(X|θ), 共轭的先验分布 P(θ),如此一来后验分布 P(θ|X) 就会同先验分布具有相同的函数形式。而且对于任何指数族成员来说,都存在有一个共轭先验。


参考文献

[1] 以上内容部分引自“胖胖小龟宝”在http://bbs.pinggu.org/上的帖子

[2] Pattern Recognition And Machine Learning, Christopher Bishop

[3] 抛硬币的例子来自http://maider.blog.sohu.com/306392863.html

时间: 2024-10-04 04:47:49

先验概率、后验概率以及共轭先验的相关文章

共轭先验(conjugate prior)

共轭是贝叶斯理论中的一个概念,一般共轭要说是一个先验分布与似然函数共轭: 那么就从贝叶斯理论中的先验概率,后验概率以及似然函数说起: 在概率论中有一个条件概率公式,有两个变量第一个是A,第二个是B ,A先发生,B后发生,B的发生与否是与A有关系的,那么我们要想根据B的发生情况来计算 A发生的概率就是所谓的后验概率P(A|B)(后验概率是一个条件概率,即在B发生的条件下A发生的概率)计算公式是P(A|B)=P(AB)/P(B),而又有乘法公式P(AB)=P(A)P(B|A),这里的P(A)称为先验

机器学习基础系列--先验概率 后验概率 似然函数 最大似然估计(MLE) 最大后验概率(MAE) 以及贝叶斯公式的理解

目录 机器学习基础 1. 概率和统计 2. 先验概率 3. 后验概率 4. 似然函数 5. 有趣的野史--贝叶斯和似然之争-最大似然概率(MLE)-最大后验概率(MAE)-贝叶斯公式 总结:先验概率 后验概率以及似然函数的关系 机器学习基础 1. 概率和统计 概率(probabilty)和统计(statistics)看似两个相近的概念,其实研究的问题刚好相反. 顾名思义: 概率研究的问题是,已知一个模型和参数,怎么去预测这个模型产生的结果的特性(例如均值,方差,协方差等等). 统计研究的问题则相

共轭先验的理解

如果你读过贝叶斯学习方面的书或者论文,想必是知道共轭先验这个名词的. 现在假设你闭上眼睛,你能准确地说出共轭分布是指哪个分布和哪个分布式共轭的吗? 我之前就常常把这个关系弄错,现在记录如下,以加强印象. 贝叶斯学派和频率学派的区别之一是特别重视先验信息对于inference的影响,而引入先验信息的手段有“贝叶斯原则“(即把先验信息当着均匀分布)等四大类 其中有重要影响的一类是:共轭先验 现在假设我们有这样几类概率:P(\theta)(先验分布), p(\theta|X)(后验分布), p(X),

共轭先验

Bayes公式告诉我们\begin{align*} p(y|x) = \frac{p(x|y)p(y)}{p(x)} \end{align*}其中$p(y)$被称为先验分布,是我们对随机变量$y$的初始信念:$p(x|y)$被称作似然,它表示的是在给定$y$的条件下$x$的概率,这个可从观测数据中得到:$p(y|x)$则是后验分布,它表示的是在看到数据后,我们对随机变量$y$的新的信念. 一般来说,给定一个似然,后验与先验不会属于同一个分布族,但也存在一些特例,当先验与后验同属一个分布族时,该先

什么叫共轭先验或者共轭分布?

如果你读过贝叶斯学习方面的书或者论文,想必是知道共轭先验这个名词的. 现在假设你闭上眼睛,你能准确地说出共轭分布是指哪个分布和哪个分布式共轭的吗? 我之前就常常把这个关系弄错,现在记录如下,以加强印象. 贝叶斯学派和频率学派的区别之一是特别重视先验信息对于inference的影响,而引入先验信息的手段有"贝叶斯原则"(即把先验信息当着均匀分布)等四大类 其中有重要影响的一类是:共轭先验 现在假设我们有这样几类概率:P(\theta)(先验分布), p(\theta|X)(后验分布),

贝叶斯公式的直观理解(先验概率/后验概率)

博客转自:https://www.cnblogs.com/yemanxiaozu/p/7680761.html 前言 以前在许学习贝叶斯方法的时候一直不得要领,什么先验概率,什么后验概率,完全是跟想象脱节的东西,今天在听喜马拉雅的音频的时候突然领悟到,贝叶斯老人家当时想到这么一种理论前提可能也是基于一种人的直觉. 先验概率:是   指根据  以往经验  和分析  得到的概率.[1] 意思是说我们人有一个常识,比如骰子,我们都知道概率是1/6,而且无数次重复实验也表明是这个数,这是一种我们人的常识

蒙特卡洛采样之拒绝采样(Reject Sampling)

引子 蒙特卡洛(Monte Carlo)方法是二十世纪四十年代中期由于科学技术的发展和电子计算机的发明,而被提出的一种以概率统计理论为基础的数值计算方法.它的核心思想就是使用随机数(或更常见的伪随机数)来解决一些复杂的计算问题. 当所求解问题可以转化为某种随机分布的特征数(比如随机事件出现的概率,或者随机变量的期望值等)时,往往就可以考虑使用蒙特卡洛方法.通过随机抽样的方法,以随机事件出现的频率估计其概率,或者以抽样的数字特征估算随机变量的数字特征,并将其作为问题的解.这种方法多用于求解复杂的高

先验概率、后验概率、似然估计,似然函数、贝叶斯公式

联合概率的乘法公式: (如果随机变量是独立的,则)  由乘法公式可得条件概率公式:, , 全概率公式:,其中 (,则,则可轻易推导出上式) 贝叶斯公式: 又名后验概率公式.逆概率公式:后验概率=似然函数×先验概率/证据因子.解释如下,假设我们根据“手臂是否很长”这个随机变量(取值为“手臂很长”或“手臂不长”)的观测样本数据来分析远处一个生物是猩猩类别还是人类类别(假设总共只有这2种类别).我们身处一个人迹罕至的深山老林里,且之前就有很多报道说这里有猩猩出没,所以无需观测样本数据就知道是猩猩的先验

统计学习方法——朴素贝叶斯法、先验概率、后验概率

朴素贝叶斯法,就是使用贝叶斯公式的学习方法,朴素就是它假设输入变量(向量)的各个分量之间是相互独立的.所以对于分量之间不独立的分布,如果使用它学习和预测效果就不会很好. 简化策略 它是目标是通过训练数据集学习联合概率分布$P(X, Y)$用来预测.书上说,具体是先学习到先验概率分布以及条件概率分布,分别如下:(但我认为,直接学习$P(X, Y)$就行了,它要多此一举算出这两个再乘起来变成$P(X, Y)$,但其实计算量差不多,可能这样更好理解吧) $P(Y = c_k), k = 1, 2, 3