基础知识:conjugate priors共轭先验
共轭先验是指这样一种概率密度:它使得后验概率的密度函数与先验概率的密度函数具有相同的函数形式。它极大地简化了贝叶斯分析。
如何解释这句话。由于P(u|D) = p(D|u)p(u)/p(D),其中D是给定的一个样本集合,因此对其来说p(D)是一个确定的值,可以理解为一个常数。P(u|D)是后验概率,p(D|u)是似然概率,p(u)是u的先验概率。P(u|D)的函数形式完全由p(D|u)和p(u)的乘积决定。如果p(u)的取值使p(u|D)和p(D|u)相同的表达形式(关于u的表达形式),就称p(u)为共轭先验。一个最简单的p(u)的取值就是常数1,只不过1是p(u)的一种取值。
二项分布和Beta分布:
如果随机变量x的取值只能去0或1,则称x为服从二项分布的随机变量:
其中u为p(x=1)。注意上式中x只能为0或1,因此当x为0时p=1-u,当x为1时p=u。写成上面的乘积形式是为了数学描述的方便。
如果对此二值实验重复进行N次,出现的结果将会有m次1和N-m次0。此事件出现的概率为
称为伯努利实验。给定一个数据集D,其似然函数可以写为:
现在来看这个概率模型(这是一个似然概率)。前面的CNm可以理解为一个概率的归一化系数,它与u无关。我们考虑与u有关的这个部分。为了使后验概率具有相同的数学结构,可以取beta函数
这样得到的后验概率就具有以下形式:
因此beta分布就是二项分布的共轭先验分布,其中a和b就是beta分布的参数。
Dirichlet分布就是多项分布的共轭先验分布。因此要理解Dirichlet分布,先看看多项分布。
多项分布和Dirichlet分布:
如果x的取值有K种情况,就称x服从多项分布。往往用维数为K的矢量来描述。矢量中仅可能一个xk取值为1,其他都为0,用来描述x取第k个值。这样其概率分布可以描述为:
其中且。当对多项分布的事件进行多次,取值为0,1,2……K-1的时间分别发生次的概率则为:
与beta分布之于二项分布一样,我们找寻多项分布的共轭先验,其共轭先验应该具有这样的形式:
归一化后的表达形式为:
这个分布就叫做Dirichlet分布,其中是dirichlet分布的参数。
由于限制,因此u1,u2……被限制在单纯形中。
在上面这个介绍的例子中,可以将Dirichlet分布理解为概率的概率。因为u表示的是多项分布的概率,而Dir(u)表达的是u取某种值情况下的概率,所以可以理解为概率的概率。举个经典的例子,扔骨子。很显然这是一个多项分布,骨子的呈现只可能是1-6中的一种情况。如果我们将这个事件重复10000次,其中出现1-6的次数分别为2000,2000,2000,1500,1500,1000,那么u的取值就是(0.2,0.2,0.2,0.15,0.15,0.1)。那么Dirichlet概率描述的就是u取值为(0.2,0.2,0.2,0.15,0.15,0.1)的概率。