背景
贝叶斯估计
贝叶斯参数估计的思考过程可以用下面这个公式说明:
先验分布+数据的知识=后验分布 (∗)
共轭先验分布的提出
- 当没有任何观察数据时,随机变量 θ 服从概率分布 P(θ)
- 当观测到新的数据
X
时,有如下问题:
- 可否根据新观测到的数据
X ,更新参数 θ - 根据新观测到的数据可以在多大程度上改变参数 θ : θ←θ+Δθ
- 当重新估计 θ 的时候,如何给出其新的概率分布 p(θ|X)
- 可否根据新观测到的数据
根据贝叶斯法则:
p(θ|x)=P(x|θ)⋅P(θ)P(x)∝P(x|θ)⋅P(θ)
其中
P(x|θ)
表示似然函数,可以直接求得。
P(θ)
表示
θ
的先验概率分布。若可以选择一个合适的先验分布
p(θ)
能使得。
后验概率分布
P(θ|x)
与 先验概率分布
p(θ)
有相同的形式,则能简化后验概率部分的求解。
定义
在贝叶斯概率理论中,如果后验概率 P(θ|x) 和先验概率 p(θ) 满足同样的分布律,那么,先验分布和后验分布叫做共轭分布。同时,先验分布叫做似然函数 p(x|θ) 的共轭先验分布。
例子
Beta-Binomial 共轭
类比于公式
(∗)
, Beta-Binomial 共轭结构可以用下面这个公式来说明:
Beta(p|α,β)+BinomCount(m1,m2)=Beta(p|α+m1,β+m2)
此处共轭的意识就是,数据符合二项分布的时候,若参数的先验分布为Beta分布,则参数的后验分布仍然为Beta分布。
证明如下:
P(p|m1,m2)=P(p)⋅P(m1,m2|p)P(m1,m2)=Beta(p|α,β)⋅Binomial(m1,m2|p)∫Beta(t|α,β)⋅Binomial(m1,m2|t) dt=1B(α,β)pα−1(1−p)β−1⋅Cm1mpm1(1−p)m2∫1B(α,β)tα−1(1−t)β−1⋅Cm1mtm1(1−t)m2 dt=pα+m1−1(1−p)β+m2−1∫tα+m1−1(1−t)β+m2−1 dt
计算得到的后验分布正好是
Beta(p|α+m1,β+m2)
Dirichlet-Multinomial 共轭
若将Beta分布扩展到
N
维 Dirichlet分布,同时将 Binomial 分布扩展到
Dir(p⃗ |α⃗ )+MultiCount(m⃗ )=Dir(p⃗ |α⃗ +m⃗ )
此处共轭的意思就是,数据符合multinomial 分布,若参数的先验分布为Dirichlet分布,则参数的后验分布仍为Dirichlet分布。
Dirichlet 参数
p⃗
的估计:
由于我们有了参数的后验概率分布为
Dir(p⃗ |α⃗ +m⃗ )
,所以合理的方式是使用后验概率分布的极大值点,或者参数后验概率分布的期望值。在该文档中,我们取平均值作为参数的估计值。
E(p⃗ )=(α1+m1∑Ni=1(αi+mi),α2+m2∑Ni=1(αi+mi),…,αN+mN∑Ni=1(αi+mi))
也就说对每个
pi
,我们可以用下式做参数估计:
p̂ i=αi+mi∑Ni=1(αi+mi)
考虑到
αi
在 Dirichlet 分布中的物理意义是事件的先验伪计数,这个估计式子的含义是很直观的:每个参数的估计值是其对应事件的先验伪计数和观察到的数据中的计数之和在整体计数中的比例。