文章目录
2. Parameter estimation approaches
我们面临两个推论问题,(1)一组分布参数的估算值 θ 能最好的解释一组观察 X 和(2)在已有观测结果 X 的前提下,得到新观测 x ~ \tilde x x~ 的概率,即计算 P ( x ~ ∣ X ) P(\tilde x|X) P(x~∣X) 。我们将前一个问题称为估计问题,后一个问题称为预测或回归问题。
数据集X可以看作是一个随机变量的独立的、同分布的(i.i.d)序列。参数θ是依赖于你所考虑的分布,对于高斯分布, θ = { μ , σ } \theta=\{ \mu, \sigma \} θ={μ,σ}。
对于这些数据和参数,贝叶斯统计中普遍存在两个概率函数。它们是贝叶斯规则的一部分,如下:
P ( θ ∣ X ) = P ( X ∣ θ ) ⋅ P ( θ ) P ( X ) ( 1 ) P(\theta|X)=\frac{P(X|\theta) \cdot P(\theta)}{P(X)} \qquad(1) P(θ∣X)=P(X)P(X∣θ)⋅P(θ)(1)
对此定义了相应的术语:
p o s t e r i o r = l i k e l i h o o d ⋅ p r i o r e v i d e n c e ( 2 ) posterior=\frac{likelihood \cdot prior}{evidence}\qquad(2) posterior=evidencelikelihood⋅prior(2)
在接下来的段落中,我们将会展示不同的估计方法,从简单的似然最大化开始,然后展示如何通过最大化后验来合并参数的先验信念,最后使用贝叶斯规则来推断一个完整的后验分布。
2.1 Maximum likelihood estimation
最大似然估计试图找到使似然最大化的参数。
L ( θ ∣ X ) = P ( X ∣ θ ) = ⋂ x ∈ X { x ∣ θ } = ∏ P ( x ∣ θ ) ( 3 ) L(\theta|X)=P(X|\theta)=\bigcap_{x\in X}\{x|\theta\}=\prod P(x|\theta)\qquad(3) L(θ∣X)=P(X∣θ)=x∈X⋂{x∣θ}=∏P(x∣θ)(3)
由于上式中的连乘,使用对数似然是数值计算更加简单,因此,MLE有如下形式:
θ ^ M L = a r g m a x θ L L ( θ ∣ X ) = a r g m a x θ ∑ x ∈ X l o g P ( x ∣ θ ) ( 4 ) \hat\theta_{ML} = argmax_{\theta}LL(\theta|X) = argmax_{\theta}\sum_{x\in X}logP(x|\theta)\qquad(4) θ^ML=argmaxθLL(θ∣X)=argmaxθx∈X∑logP(x∣θ)(4)
获得参数估计的常用方法是求解系统:
∂ L L ( θ ∣ X ) ∂ θ k = 0 ∀ θ k ∈ θ ( 5 ) \frac{\partial LL(\theta|X)}{\partial\theta_k}=0 \qquad \forall \theta_k \in \theta\qquad(5) ∂θk∂LL(θ∣X)=0∀θk∈θ(5)
此时新观测到的数据可以被这样近似的估计概率:
P ( x ~ ∣ X ) = ∫ P ( x ∣ θ ) P ( θ ∣ X ) d θ ( 6 ) ≃ ∫ P ( x ∣ θ ~ M L ) P ( θ ∣ X ) d θ = P ( x ~ ∣ θ ^ M L ) ( 7 ) P(\tilde x|X) = \int P(x|\theta)P(\theta|X)d\theta\qquad(6)\\ \simeq \int P(x|\tilde\theta_{ML})P(\theta|X)d\theta = P(\tilde x|\hat\theta_{ML})\qquad(7) P(x~∣X)=∫P(x∣θ)P(θ∣X)dθ(6)≃∫P(x∣θ~ML)P(θ∣X)dθ=P(x~∣θ^ML)(7)
也就是说,会估计下一个数据产生的概率是使用当前估计参数控制下的分布中采样的概率。
例题
抛硬币20次中,12次正面,8次反面。估计硬币正面向上的概率。
对与该问题,正面向上的次数服从Bernoulli分布,但是参数未知,使用上面所述的MLE方法进行估计。
L L = ∑ i = 1 N l o g P ( c ∣ p ) = n ( 1 ) l o g P ( 1 ∣ p ) + n ( 0 ) l o g P ( 0 ∣ p ) = n ( 1 ) p + n ( 0 ) ( 1 − p ) ( 10 ) LL = \sum_{i=1}^NlogP(c|p) =\\ n^{(1)}logP(1|p)+n^{(0)}logP(0|p) = n^{(1)}p+n^{(0)}(1-p) \qquad(10) LL=i=1∑NlogP(c∣p)=n(1)logP(1∣p)+n(0)logP(0∣p)=n(1)p+n(0)(1−p)(10)
令梯度为零可以得到极大似然估计的参数:
θ ^ M L = n ( 1 ) N ( 11 ) \hat\theta_{ML} = \frac{n^{(1)}}{N}\qquad(11) θ^ML=Nn(1)(11)
这个结果可解释性很强,我们认为估计值就是正面次数与样本总数之比。在这个例子中,我们可以假设我们的硬币是严重变形的。
2.2 Maximum a posteriori estimation
最大后验(MAP)估计非常类似于ML估计,但是MAP可以通过一定权重的先验分布p(θ)来在估计值中加入一些先验信念。这个名字来源于最大值的目标是在给定数据的情况下最大化参数的后验概率。这一点和MLE不同,MLE最大化的目标是likelihood,MAP最大化的目标是posterior。使用前述的贝叶斯公式(1)(2)对后验概率进行分解,如下:
θ ^ M A P = a r g m a x θ P ( θ ∣ X ) ( 12 ) = a r g m a x θ P ( X ∣ θ ) ⋅ P ( θ ) P ( X ) = a r g m a x θ P ( X ∣ θ ) ⋅ P ( θ ) = a r g m a x θ { L L ( θ ∣ X ) + l o g P ( θ ) } = a r g m a x θ { L L ( θ ∣ X ) + l o g P ( θ ) } = a r g m a x θ { ∑ x ∈ X l o g P ( x ∣ θ ) + l o g P ( θ ) } ( 13 ) \hat\theta_{MAP}= argmax_{\theta}P(\theta|X) \qquad(12)\\= argmax_\theta\frac{P(X|\theta) \cdot P(\theta)}{P(X)} = argmax_\theta P(X|\theta)\cdot P(\theta) = argmax_{\theta}\{LL(\theta|X) + logP(\theta)\}=argmax_{\theta}\{LL(\theta|X)+logP(\theta)\}\\=argmax_{\theta}\{\sum_{x\in X}logP(x|\theta) + logP(\theta)\} \qquad(13) θ^MAP=argmaxθP(θ∣X)(12)=argmaxθP(X)P(X∣θ)⋅P(θ)=argmaxθP(X∣θ)⋅P(θ)=argmaxθ{LL(θ∣X)+logP(θ)}=argmaxθ{LL(θ∣X)+logP(θ)}=argmaxθ{x∈X∑logP(x∣θ)+logP(θ)}(13)
与(4)相比,在似然中增加了先验分布的信息。在实践中,先验p(θ)可以用来编码额外的知识,使得求解目标偏好更简单的模型来预防过拟合,这被称为Occam’s Razer。
通过引入p(θ),MAP遵循贝叶斯方法进行数据建模,其中参数θ被认为是r.v.s. 对于自身参数化的先验,即具有超参数α的p(θ):= p(θ|α),可以在概率框架内表达θ的预期值的信念,并且创建参数的层次。
MAP参数估计可以通过最大化项 $ L(θ|X)+ log p(θ)$ 来找到,从形式上看与(5)很相似。类似于(7)的做法,给定数据X,新观测的概率 x ~ \tilde x x~可以使用以下近似值:
P ( x ~ ∣ X ) ≃ ∫ P ( x ~ ∣ θ ^ M A P ) P ( θ ∣ X ) d θ = P ( x ~ ∣ θ ^ M A P ) ( 14 ) P(\tilde x|X) \simeq \int P(\tilde x|\hat\theta_{MAP})P(\theta|X)d\theta = P(\tilde x|\hat\theta_{MAP}) \qquad(14) P(x~∣X)≃∫P(x~∣θ^MAP)P(θ∣X)dθ=P(x~∣θ^MAP)(14)
例题
抛硬币20次中,12次正面,8次反面。估计硬币正面向上的概率。
题目与之前一样,不过现在我们认为Bernoulli分布的参数会有更大的概率取某些特定的值,例如,我们认为硬币通常是公平的。这可以表示为具有0.5左右的高概率的先验分布。 我们选择beta分布:
P ( p ∣ α , β ) = 1 B ( α , β ) p α − 1 ( 1 − p ) β − 1 = B e t a ( p ∣ α , β ) ( 15 ) P(p|\alpha, \beta)=\frac{1}{B(\alpha, \beta)}p^{\alpha-1}(1-p)^{\beta-1}=Beta(p|\alpha,\beta) \qquad(15) P(p∣α,β)=B(α,β)1pα−1(1−p)β−1=Beta(p∣α,β)(15)
其中,Beta函数是对Gamma函数的扩展:
B ( α , β ) = Γ ( α ) Γ ( β ) Γ ( α + β ) B(\alpha, \beta)=\frac{\Gamma(\alpha)\Gamma(\beta)}{\Gamma(\alpha+\beta)} B(α,β)=Γ(α+β)Γ(α)Γ(β)
译者注:有关Beta分布的内容没有翻译过来。
在我们的例子中,我们相信一个硬币有很大概率是地址均匀的,因此我么设置α=β= 5,这导致模式(最大值)为0.5的分布。优化问题现在变成了:
∂ ∂ p L L + l o g p ( θ ) = n ( 1 ) p − n ( 0 ) 1 − p + α − 1 p − β − 1 1 − p = 0 ( 16 ) ⇔ p ^ M A P = n ( 1 ) + α − 1 n ( 1 ) + n ( 0 ) + α + β − 2 = n ( 1 ) + 4 n ( 1 ) + n ( 0 ) + 8 ( 17 ) \frac{\partial}{\partial p}LL+logp(\theta)=\frac{n^{(1)}}{p}-\frac{n^{(0)}}{1-p}+\frac{\alpha-1}{p}-\frac{\beta-1}{1-p}=0\qquad(16)\\ \Leftrightarrow \hat p_{MAP}=\frac{n^{(1)}+\alpha-1}{n^{(1)}+n^{(0)}+\alpha+\beta-2}=\frac{n^{(1)}+4}{n^{(1)}+n^{(0)}+8}\qquad(17) ∂p∂LL+logp(θ)=pn(1)−1−pn(0)+pα−1−1−pβ−1=0(16)⇔p^MAP=n(1)+n(0)+α+β−2n(1)+α−1=n(1)+n(0)+8n(1)+4(17)
这个结果在两个方面很有意思。第一点是估计p的变化行为,bernoulli实验的计数 n ( c ) n^{(c)} n(c),他们使得我们最终的的估计值向先验移动。超参数α和β的值越高,修改由它们表达的先验信念所需的实际观察就越多。第二个有趣的方面是和 n ( 1 ) + α − 1 n^{(1)}+α-1 n(1)+α−1和 n ( 0 ) + β − 1 n^{(0)}+β - 1 n(0)+β−1的唯一出现:计数究竟来自实际观察或先验信念对于最终的参数估计来说无关紧要。这就是超参数α和β通常被称为伪计数的原因。存在较高的伪计数,β分布更加集中在其最大值附近。根据我们的20次实验结果, p ~ M A P = 16 / 28 = 0.571 \tilde p_{MAP} = 16/28 = 0.571 p~MAP=16/28=0.571,与MLE的结果0.6相比,显示了先验信念对硬币“公平性”的影响。
2.3 Bayesian estimation
贝叶斯估计是对极大后验估计的扩展,贝叶斯方法估计参数集θ上的整体分布而不是直接对分布进行点估计。不仅将数据生成参数的最大值(后验值)编码,而且还将期望作为另一参数估计,并使其作为估计质量或置信度的度量的方差信息。 这种方法的主要步骤是根据贝叶斯规则计算后验:
P ( θ ∣ X ) = P ( X ∣ θ ) ⋅ P ( θ ) P ( X ) ( 18 ) P(\theta|X)=\frac{P(X|\theta) \cdot P(\theta)}{P(X)} \qquad(18) P(θ∣X)=P(X)P(X∣θ)⋅P(θ)(18)
由于我们不限制计算以找到最大值,因此有必要计算归一化项,即“evidence”的概率。
p ( X ) = ∫ θ P ( X ∣ θ ) P ( θ ) d θ ( 19 ) p(X)=\int_\theta P(X|\theta)P(\theta)d\theta\qquad(19) p(X)=∫θP(X∣θ)P(θ)dθ(19)
随着新数据的观察,Eq18的后验会自动调整,最终可以对其统计数据进行分析。 然而,Eq19中的归一化积分通常是贝叶斯估计的复杂部分,将在下面进一步处理。 在预测问题中,贝叶斯方法通过确保Eq14中的精确相等来扩展MAP,然后变为:
P ( x ~ ∣ X ) = ∫ P ( x ~ ∣ θ ) P ( θ ∣ X ) d θ ( 20 ) = ∫ P ( x ~ ∣ θ ) P ( X ∣ θ ) ⋅ P ( θ ) P ( X ) d θ ( 21 ) P(\tilde x|X) = \int P(\tilde x|\theta)P(\theta|X)d\theta\qquad(20)\\=\int P(\tilde x|\theta)\frac{P(X|\theta) \cdot P(\theta)}{P(X)}d\theta \qquad(21) P(x~∣X)=∫P(x~∣θ)P(θ∣X)dθ(20)=∫P(x~∣θ)P(X)P(X∣θ)⋅P(θ)dθ(21)
这里后验p(θ|X)代替参数值θ的显式计算。 通过对θ的积分,先验信念自动地并入预测中,预测本身是x上的分布,并且可以计算置信度,例如通过其方差。
接着举个栗子,我们建立一个贝叶斯估计器,用于上述具有N个伯努利观测的情况。我们的先验依然用参数为(5,5)的β分布表示。除了最大后验值之外,我们还需要计算随机参数p的期望值和估计置信度的度量。
P ( p ∣ C , α , β ) = ∏ i = 1 N P ( c i ∣ p ) P ( p ∣ α , β ) ∫ 0 1 ∏ i = 1 N P ( c i ∣ p ) P ( p ∣ α , β ) d θ ( 22 ) = p n ( 1 ) ( 1 − p ) n ( 0 ) 1 B ( α , β ) p α − 1 ( 1 − p ) β − 1 ∫ 0 1 p n ( 1 ) ( 1 − p ) n ( 0 ) 1 B ( α , β ) p α − 1 ( 1 − p ) β − 1 d p ( 23 ) = p n ( 1 ) ( 1 − p ) n ( 0 ) p α − 1 ( 1 − p ) β − 1 ∫ 0 1 p n ( 1 ) ( 1 − p ) n ( 0 ) p α − 1 ( 1 − p ) β − 1 d p = p n ( 1 ) + α − 1 ( 1 − p ) n ( 0 ) + β − 1 ∫ 0 1 p n ( 1 ) + α − 1 ( 1 − p ) n ( 0 ) + β − 1 d p = p n ( 1 ) + α − 1 ( 1 − p ) n ( 0 ) + β − 1 B ( n ( 1 ) + α , n ( 0 ) + β ) ( 24 ) = B e t a ( p ∣ n ( 1 ) + α , n ( 0 ) + β ) ( 25 ) P(p|C,\alpha,\beta)=\frac{\prod_{i=1}^NP(c_i|p)P(p|\alpha,\beta)}{\int_0^1\prod_{i=1}^NP(c_i|p)P(p|\alpha,\beta)d\theta}\qquad(22)\\ =\frac{p^{n^{(1)}}(1-p)^{n^{(0)}}\frac{1}{B(\alpha, \beta)}p^{\alpha-1}(1-p)^{\beta-1}}{\int_0^1 p^{n^{(1)}}(1-p)^{n^{(0)}}\frac{1}{B(\alpha, \beta)}p^{\alpha-1}(1-p)^{\beta-1}dp}\qquad(23)\\ =\frac{p^{n^{(1)}}(1-p)^{n^{(0)}}p^{\alpha-1}(1-p)^{\beta-1}}{\int_0^1 p^{n^{(1)}}(1-p)^{n^{(0)}}p^{\alpha-1}(1-p)^{\beta-1}dp}\\ =\frac{p^{n^{(1)}+\alpha-1}(1-p)^{n^{(0)}+\beta-1}}{\int_0^1p^{n^{(1)}+\alpha-1}(1-p)^{n^{(0)}+\beta-1}dp}\\ =\frac{p^{n^{(1)}+\alpha-1}(1-p)^{n^{(0)}+\beta-1}}{B(n^{(1)}+\alpha,n^{(0)}+\beta)}\qquad(24)\\ =Beta(p|n^{(1)}+\alpha,n^{(0)}+\beta)\qquad(25) P(p∣C,α,β)=∫01∏i=1NP(ci∣p)P(p∣α,β)dθ∏i=1NP(ci∣p)P(p∣α,β)(22)=∫01pn(1)(1−p)n(0)B(α,β)1pα−1(1−p)β−1dppn(1)(1−p)n(0)B(α,β)1pα−1(1−p)β−1(23)=∫01pn(1)(1−p)n(0)pα−1(1−p)β−1dppn(1)(1−p)n(0)pα−1(1−p)β−1=∫01pn(1)+α−1(1−p)n(0)+β−1dppn(1)+α−1(1−p)n(0)+β−1=B(n(1)+α,n(0)+β)pn(1)+α−1(1−p)n(0)+β−1(24)=Beta(p∣n(1)+α,n(0)+β)(25)
译者注:22到25的推导过程实际上展示的是Beta-Binomial共轭结构,即: P ( p ∣ α , β ) + B i n o m i a l C o u n t ( m 1 , m 2 ) = P ( p ∣ α + m 1 , β + m 2 ) P(p|\alpha,\beta)+BinomialCount(m1, m2)=P(p|\alpha+m1,\beta+m2) P(p∣α,β)+BinomialCount(m1,m2)=P(p∣α+m1,β+m2),其中23-24之间的部分是译者个人加入的中间步骤。
易知,Beta分布的均值为
α
α
+
β
\frac{\alpha}{\alpha+\beta}
α+βα,方差为
α
β
(
α
+
β
+
1
)
(
α
+
β
)
2
\frac{\alpha\beta}{(\alpha+\beta+1)(\alpha+\beta)^2}
(α+β+1)(α+β)2αβ,直接带入计算,结果为:
E
=
n
(
1
)
+
5
N
+
10
=
0.567
(
26
)
E = \frac{n^{(1)}+5}{N+10} = 0.567\qquad(26)
E=N+10n(1)+5=0.567(26)
V
a
r
=
(
n
(
1
)
+
5
)
(
n
(
0
)
+
5
)
(
N
+
11
)
(
N
+
10
)
2
=
0.0079
(
27
)
Var = \frac{(n^{(1)}+5)(n^{(0)}+5)}{(N+11)(N+10)^2}= 0.0079\qquad(27)
Var=(N+11)(N+10)2(n(1)+5)(n(0)+5)=0.0079(27)
期望与MAP估计不同,后者是后验分布的最大值而不是期望值。但是,如果计数和伪计数的总和变大,则期望值和最大值都会收敛。
3. Conjugate distributions
贝叶斯模型的计算通常变得非常困难,例如,因为边际似然的求和或积分是难以处理(译者注:见21)的或存在未知变量。 幸运的是,贝叶斯方法为先验信念的编码留下了一些自由,并且促进模型推理的常用策略是使用共轭先验分布。
3.1 Conjugacy
对于似然p(x|θ)的共轭先验分布p(θ),可以使得后验分布p(θ|x)和先验分布具有相同的形式,只是参数不同。
等式25说明了这一点:后验分布是像先验一样的β分布,并且归一化项Z的确定很简单(译者注:在上面的例子中,归一化项是一个Beta函数,并且作为Beta分布的一部分存在)。
除了计算简化之外,共轭通常会导致对超参数的有意义的解释,并且在我们的β-Bernoulli共轭情况下,得到的后验可以被解释为:观察计数被添加到先验的伪计数中α和β。
此外,共轭先验似然对通常允许以closed-form对被估计参数(举的例子中就是硬币正面向上的概率p)计算边际似然参数,从而直接根据超参数表达观察的可能性。 对于beta-Bernoulli案例,这看起来如下:
P ( C ∣ α , β ) = ∫ 0 1 P ( C ∣ p ) P ( p ∣ α , β ) d p ( 28 ) = ∫ 0 1 p n ( 1 ) ( 1 − p ) n ( 0 ) 1 B ( α , β ) p α − 1 ( 1 − p ) β − 1 d p ( 29 ) = 1 B ( α , β ) ∫ 0 1 p n ( 1 ) + α − 1 ( 1 − p ) n ( 0 ) + β − 1 d p ( 30 ) = n ( 1 ) + α , n ( 0 ) + β B ( α , β ) = Γ ( n ( 1 ) + α ) Γ ( n ( 0 ) + β ) Γ ( n ( 1 ) + α + n ( 0 ) + β ) Γ ( α ) Γ ( β ) Γ ( α + β ) ( 31 ) P(C|\alpha,\beta)=\int_0^1P(C|p)P(p|\alpha,\beta)dp\qquad(28)\\ =\int_0^1 p^{n^{(1)}}(1-p)^{n^{(0)}}\frac{1}{B(\alpha, \beta)}p^{\alpha-1}(1-p)^{\beta-1}dp\qquad(29)\\ =\frac{1}{B(\alpha,\beta)}\int_0^1p^{n^{(1)}+\alpha-1}(1-p)^{n^{(0)}+\beta-1}dp\qquad(30)\\ =\frac{n^{(1)}+\alpha,n^{(0)}+\beta}{B(\alpha,\beta)}=\frac{\Gamma(n^{(1)}+\alpha)\Gamma(n^{(0)}+\beta)}{\Gamma(n^{(1)}+\alpha+n^{(0)}+\beta)}\frac{\Gamma(\alpha)\Gamma(\beta)}{\Gamma(\alpha+\beta)}\qquad(31) P(C∣α,β)=∫01P(C∣p)P(p∣α,β)dp(28)=∫01pn(1)(1−p)n(0)B(α,β)1pα−1(1−p)β−1dp(29)=B(α,β)1∫01pn(1)+α−1(1−p)n(0)+β−1dp(30)=B(α,β)n(1)+α,n(0)+β=Γ(n(1)+α+n(0)+β)Γ(n(1)+α)Γ(n(0)+β)Γ(α+β)Γ(α)Γ(β)(31)
该结果可用于预测未来伯努利试验的分布,而无需事先观察参数p的明确知识。 对于一个新的观测,可以这样计算似然:
p
(
c
~
=
1
∣
C
,
α
,
β
)
=
p
(
c
~
=
1
,
C
∣
α
,
β
)
p
(
C
∣
α
,
β
)
=
Γ
(
n
(
1
)
+
α
+
1
)
Γ
(
n
(
1
)
+
n
(
0
)
+
β
+
α
+
1
)
Γ
(
n
(
1
)
+
α
)
Γ
(
n
(
1
)
+
n
(
0
)
+
β
+
α
)
(
32
)
=
n
(
1
)
+
α
)
n
(
1
)
+
n
(
0
)
+
β
+
α
(
33
)
p(\tilde c=1|C,\alpha,\beta)=\frac{p(\tilde c=1, C|\alpha,\beta)}{p(C|\alpha,\beta)}=\frac{\frac{\Gamma(n^{(1)}+\alpha+1)}{\Gamma(n^{(1)}+n^{(0)}+\beta+\alpha+1)}}{\frac{\Gamma(n^{(1)}+\alpha)}{\Gamma(n^{(1)}+n^{(0)}+\beta+\alpha)}}\qquad(32)\\ =\frac{n^{(1)}+\alpha)}{n^{(1)}+n^{(0)}+\beta+\alpha}\qquad(33)
p(c~=1∣C,α,β)=p(C∣α,β)p(c~=1,C∣α,β)=Γ(n(1)+n(0)+β+α)Γ(n(1)+α)Γ(n(1)+n(0)+β+α+1)Γ(n(1)+α+1)(32)=n(1)+n(0)+β+αn(1)+α)(33)
其中33的推导利用了Gamma的阶乘性质。
如上所述,有几个重要的先验似然对可用于简化贝叶斯推断。 与β分布相关的一个重要例子是二项分布,它给出了从参数p的N次伯努利实验中的 n n n次为真概率:
P ( n ∣ p , N ) = ( N n ) p n ( 1 − p ) N − n = B i n ( n ∣ p , N ) ( 34 ) P(n|p,N)=\begin{pmatrix} N \\ n \end{pmatrix}p^{n}(1-p)^{N-n}=Bin(n|p,N)\qquad(34) P(n∣p,N)=(Nn)pn(1−p)N−n=Bin(n∣p,N)(34)
对于二项分布,由于其参数p具有与伯努利分布相同的含义,因此二项分布的共轭分布也是β分布。其他计算伯努利试验的分布也属于该方案,例如负二项分布。
3.2 Multivariate case
到目前为止考虑的分布处理二元实验的结果。 如果我们将可能事件的数量从2推广到有限整数K,我们可以获得K维伯努利或多项式实验,例如骰子的滚动。 如果我们重复这个实验,我们获得观察事件计数(骰子点面)的多项分布。
P ( n ⃗ ∣ p ⃗ , N ) = ( N n ⃗ ) ∏ k = 1 K p k n ( k ) = B i n ( n ⃗ ∣ p ⃗ , N ) ( 35 ) P(\vec n|\vec p,N)=\begin{pmatrix} N \\ \vec n \end{pmatrix}\prod_{k=1}^Kp_k^{n^{(k)}}=Bin(\vec n|\vec p,N)\qquad(35) P(n∣p,N)=(Nn)k=1∏Kpkn(k)=Bin(n∣p,N)(35)
P ( C ∣ p ⃗ , N ) = ∏ n = 1 N p c i = ∏ k = 1 K p k n ( k ) ( 36 ) P(C|\vec p,N)=\prod_{n=1}^Np_{c_i}=\prod_{k=1}^Kp_k^{n^{(k)}}\qquad(36) P(C∣p,N)=n=1∏Npci=k=1∏Kpkn(k)(36)
注意式子36,对比多项式分布,缺少正规化多项式系数。这种差异是由于我们假设N个实验的结果序列C是固定的,不是获得特定多项式计数向量。真正的多项式分布可能是由N个不同的序列C生成的。在建模文本观察中,这种形式的多项实验非常重要。实际上可以这么认为,我们依然认为我们的分布是多项式分布,只不过由于实验的可交换性,我们不关心序列顺序,因此前面的序列种类数直接不考虑。在实际推导中,这个组合数作为一个常数也会被消掉,只要我们确定各个实际发生的次数固定。比如大家可能没有注意到,前面极大似然估计的时候,虽然使用的是二项分布,不过同样没有考虑这个组合数。
对于多项分布的参数p,共轭先验是Dirichlet分布,它推广β分布从2到K维。
P ( p ⃗ ∣ α ⃗ ) = D i r ( p ⃗ ∣ α ⃗ ) = Γ ( ∑ k = 1 K α k ) ∏ k = 1 K Γ ( α k ) ∏ k = 1 K p k α k − 1 ( 39 ) = 1 Δ ( α ⃗ ) ∏ k = 1 K p k α k − 1 ( 40 ) P(\vec p|\vec \alpha)=Dir(\vec p|\vec \alpha)=\frac{\Gamma(\sum_{k=1}^{K}\alpha_k)}{\prod_{k=1}^{K}\Gamma(\alpha_k)}\prod_{k=1}^Kp_k^{\alpha_k-1}\qquad(39)\\ =\frac{1}{\Delta(\vec\alpha)}\prod_{k=1}^Kp_k^{\alpha_k-1}\qquad(40) P(p∣α)=Dir(p∣α)=∏k=1KΓ(αk)Γ(∑k=1Kαk)k=1∏Kpkαk−1(39)=Δ(α)1k=1∏Kpkαk−1(40)
其中, Δ ( α ⃗ ) \Delta(\vec\alpha) Δ(α)是“Dirichlet delta function”,可以认为是Beta函数的多项式扩展。如果 α ⃗ \vec\alpha α向量中,各个分量取值相同,则被称为对称狄利克雷分布。
3.3 Modelling text
考虑对文本集合W建模,W中有多篇文档,每篇文档有多个词w。我们这里使用词袋模型,因此词与词之间具有可交换性。此时考虑从一个大小为V的词典中抽样出N个词构成的文本样本,似然为:
L ( p ⃗ ∣ w ⃗ ) = ∏ t = 1 V p t n ( t ) , ∑ n ( t ) = N , ∑ p ( t ) = N ( 43 ) L(\vec p|\vec w)=\prod_{t=1}^Vp_t^{n^{(t)}}, \qquad\sum n^{(t)}=N, \qquad\sum p^{(t)}=N\qquad(43) L(p∣w)=t=1∏Vptn(t),∑n(t)=N,∑p(t)=N(43)
这个例子是Unigram模型,p是在文档中观察到术语t作为单词w的概率服从一次实验的多项式分布。 unigram模型假定所考虑的整个文本只有一种可能性(词袋模型),例如对于语言或语料库的一般假设是有用的。该模型不区分文档与文档之间的区别,即认为没有主题的区别,尽管十分简单,但是它是开发更复杂模型的完美基础。
假设存在共轭结构,词汇表的参数向量p可以用Dirichlet分布建模先验信息。 类似于Eq25,我们获得了Dirichlet后验的重要性质,即将多项式观测计数与先验pseudo-counts相结合:
P ( p ⃗ ∣ W , α ⃗ ) = P ( p ⃗ , W ∣ α ⃗ ) P ( W ∣ α ⃗ ) = ∏ n = 1 N P ( w n ∣ p ⃗ ) P ( p ⃗ ∣ α ⃗ ) ∫ ∏ n = 1 N P ( w n ∣ p ⃗ ) P ( p ⃗ ∣ α ⃗ ) d p ⃗ ( 44 ) = ∏ i = 1 V p n ( i ) 1 Δ ( α ⃗ ) p α i − 1 ∫ ∏ i = 1 V p n ( i ) 1 Δ ( α ⃗ ) p α i − 1 d p ⃗ ( 45 ) = 1 Δ n ⃗ + α ⃗ ∏ i = 1 V p n i + α i − 1 ( 46 ) = D i r ( p ⃗ ∣ α ⃗ + n ⃗ ) ( 47 ) P(\vec p|W, \vec\alpha)=\frac{P(\vec p,W|\vec\alpha)}{P(W|\vec\alpha)}=\frac{\prod_{n=1}^NP(w_n|\vec p)P(\vec p|\vec\alpha)}{\int\prod_{n=1}^NP(w_n|\vec p)P(\vec p|\vec\alpha)d\vec p}\qquad(44)\\ =\frac{\prod_{i=1}^Vp^{n^{(i)}}\frac{1}{\Delta(\vec\alpha)}p^{\alpha_i-1}}{\int \prod_{i=1}^Vp^{n^{(i)}}\frac{1}{\Delta(\vec\alpha)}p^{\alpha_i-1}d\vec p}\qquad(45)\\ =\frac{1}{\Delta{\vec n+\vec\alpha}}\prod_{i=1}^Vp^{n_i+\alpha_i-1}\qquad(46)\\ =Dir(\vec p|\vec\alpha+\vec n) \qquad(47) P(p∣W,α)=P(W∣α)P(p,W∣α)=∫∏n=1NP(wn∣p)P(p∣α)dp∏n=1NP(wn∣p)P(p∣α)(44)=∫∏i=1Vpn(i)Δ(α)1pαi−1dp∏i=1Vpn(i)Δ(α)1pαi−1(45)=Δn+α1i=1∏Vpni+αi−1(46)=Dir(p∣α+n)(47)
上述推导展示了Beta-Bernoulli共轭,用于得到新的观察结果后得到参数的后验估计分布,这个过程是inference(在统计学中,inference是指在某些观测数据条件下拟合分布参数的过程)。
对于prediction,对于参数 p ⃗ \vec p p,不要仅仅是使用单纯的基于gram的语料统计,更好的做法是,使用dirichlet先验的pseudo-count得到先验分布,然后计算对于 p ⃗ \vec p p的边缘概率。
P ( W ∣ α ⃗ ) = ∫ P ( W ∣ p ⃗ ) P ( p ⃗ ∣ α ⃗ ) d p ⃗ ( 48 ) P(W|\vec\alpha) = \int P(W|\vec p)P(\vec p|\vec\alpha)d\vec p\qquad(48) P(W∣α)=∫P(W∣p)P(p∣α)dp(48)
与式子30中的二元情形相比,积分范围不再是[0,1],因为多项分布的公式没有明确地包括 ∑ k p k = 1 \sum_kp_k=1 ∑kpk=1。 通过添加该约束,积分域P变为嵌入在K维空间中的平面(K-1)-单纯型,由在每个维度的轴上连接点 p k = 1 p_k=1 pk=1的线界定。
P ( W ∣ α ⃗ ) = ∫ ∏ n = 1 N M u l t ( w n ∣ p ⃗ , 1 ) D i r ( p ⃗ ∣ α ⃗ ) d p ⃗ ( 49 ) = ∫ ∏ i = 1 V p i n ( i ) 1 Δ ( α ⃗ ) p α i − 1 d p ⃗ ( 50 ) = 1 Δ ( α ⃗ ) ∫ ∏ i = 1 V p i n ( i ) + α i − 1 d p ⃗ ( 51 ) = Δ ( n ⃗ + α ⃗ ) Δ ( α ⃗ ) ( 52 ) P(W|\vec\alpha) = \int \prod_{n=1}^NMult(w_n|\vec p,1)Dir(\vec p|\vec\alpha)d\vec p\qquad(49)\\ =\int \prod_{i=1}^Vp_i^{n^{(i)}}\frac{1}{\Delta(\vec\alpha)}p^{\alpha_i-1}d\vec p\qquad(50)\\ =\frac{1}{\Delta(\vec\alpha)}\int \prod_{i=1}^Vp_i^{n^{(i)}+\alpha_i-1}d\vec p\qquad(51)\\ =\frac{\Delta(\vec n+\vec\alpha)}{\Delta(\vec\alpha)}\qquad\qquad\qquad\qquad(52) P(W∣α)=∫n=1∏NMult(wn∣p,1)Dir(p∣α)dp(49)=∫i=1∏Vpin(i)Δ(α)1pαi−1dp(50)=Δ(α)1∫i=1∏Vpin(i)+αi−1dp(51)=Δ(α)Δ(n+α)(52)
与beta-Bernoulli案例类似,结果表明在给定已经观察到的术语的伪计数的情况下观察到的术语的分布,没有任何其他统计。 更重要的是,类似的参数边缘化对于在下面进一步描述LDA中的后向推断是重要的。 方程式中的分布 52也被称为Dirichlet-multiinomial分布或Pólya分布。
4. Bayesian networks and generative models
本节回顾了两种密切相关的方法来表达系统或现象的概率行为:贝叶斯网络,其中条件统计独立性是一个重要方面,以及可用于根据随机分布直观地表达观察的生成模型。
4.1 Bayesian networks
贝叶斯网络(BN)是一种形式化的图形语言,用于表示系统的随机变量的联合分布,这是通过考虑所有的随机变量以及他们在有向图中的条件依赖来做到的。 BN是图模型的一个特例,它是机器学习中的一种重要方法,它还包括无向图形模型(马尔可夫随机场)和混合模型。通过仅考虑最相关的依赖关系,推理计算被大大简化。如果假设所有变量之间的依赖性,数量级会是呈指数级渐进增长。
贝叶斯网络形成有向无环图,其节点对应于随机变量,边对应于条件概率分布。其中边的source代表的条件变量被称为父节点,孩子节点是the dependent variable。贝叶斯网络区分evidence node和hidden node,前者对应于观察到或假设观察到的变量,后者对应于潜在变量。
在许多模型中,存在共享父母或孩子的节点的复制,例如,考虑多个值或混合成分。这种复制可以用plate
来表示,它框住节点并且在右下角标有复制计数或索引变量的集合声明。
图形语言的所有元素都可以在上一节所示的Dirichlet多项式模型中看到,其相应的BN如图4(a)所示。 w表示证据节点,即(假设)观察到的变量,这用双圈表示。w被plate框住,表示N个iid样本。先验参数
α
⃗
\vec α
α和未知变量
p
⃗
\vec p
p是隐藏变量。
4.2 Conditional independence and exchangeability
贝叶斯网络有效地编码随机变量之间的依赖结构,其可以从图的拓扑确定。 在此拓扑中,相关的独立属性是条件独立:如果 p ( X , Y ∣ Z ) = p ( X ∣ Z ) p ( Y ∣ Z ) p(X,Y|Z)=p(X|Z)p(Y|Z) p(X,Y∣Z)=p(X∣Z)p(Y∣Z),则认为已知条件Z,两个变量X和Y是条件独立的,符号记住 X ⊥ Y ∣ Z X⊥Y|Z X⊥Y∣Z。 对条件独立性的口头解释是,知道Z,关于变量X的任何信息都不会添加到关于Y的信息,反之亦然。这里的信息可以包括观察或参数。
Markov conditions
在贝叶斯网络中,有两个关于节点的条件独立性的一般规则。 第一个基于Markov blanket:markov blanket指的是这样节点构成的BN的子图:节点的父母,其子女及其子女的父母的集合。该条件表明节点Xi在给定其markov blanket时,条件独立于所有其他节点Xj: B ( X i ): X i ⊥ X j ∣ B ( X i ) B(X i):X_i⊥X_j|B(X_i) B(Xi):Xi⊥Xj∣B(Xi)
第二个规则是指节点的non-descendants集合:在所有BN节点的序列中,确保没有节点出现在其任何父节点之前(拓扑排序),节点的前导节点中的所有不是父节点的节点都是其non-descendants。 该规则规定节点 X i X_i Xi,在给定其父节点 P ( X i ) P(X_i) P(Xi)情况下,始终在条件上独立于其non-descendants N ( X i ) N(X_i) N(Xi): X i ⊥ N ( X i ) ∣ P ( X i ) X_i⊥N(X_i) | P(X_i) Xi⊥N(Xi)∣P(Xi)。
Bayes Ball
为了确定BN中任何节点X⊥Y| Z之间的条件独立性,一种直接的方法被称为“贝叶斯球”,它试图将消息(贝叶斯球)从X传播到Y,给出节点Z的观测值:当且仅当(iff)没有办法将球从X传递到Y时,X⊥Y| Z为真,图5中给出的规则中双圈对应于观察到的或给定的变量。
总而言之,贝叶斯球的规则规定子节点阻止传播,如果它们被隐藏,而父节点和过渡节点阻止传播,如果它们被给定或观察到(译者注:详细内容可参考贝叶斯球)。该方法也适用于节点集 { X i } ⊥ { Y j } ∣ { Z k } \{X_i\}⊥\{Y_j\} | \{Z_k\} {Xi}⊥{Yj}∣{Zk},并且如果给定节点集 { Z k } \{Z_k\} {Zk},所有节点对 ( X i , Y j ) (X_i,Y_j) (Xi,Yj)被d-separated,则条件独立性成立 ,即没有贝叶斯球路径存在。
Exchangeability
比条件独立更强且在贝叶斯统计中重要的独立关系是可交换性。 任何有限的随机变量序列 { X n } n \{X_n\}_n {Xn}n被称为可交换的,如果它的联合分布对其顺序的任何排列是不变的。 对于无限序列,这是任何有限子序列都满足可交换性,就可以说,该无限序列满足无限可交换性。
De Finetti定理推导了可交换性的重要性,该定理指出无限可交换的随机变量序列的联合分布等同于从一些先验分布中采样随机参数并随后基于该随机参数从分布中进行独立同分布采样。然后联合分布是 P ( { x m } m = 1 M ) = ∏ m = 1 M P ( x m ∣ θ ) P(\{x_m\}_{m=1}^M)=\prod_{m=1}^MP(x_m|\theta) P({xm}m=1M)=∏m=1MP(xm∣θ)
在贝叶斯网络图形语言中,给定父变量的可交换性是应用plates表示法的条件,并且在给定父节点时,可以假设变量i.i.d.。 在贝叶斯文本建模中,可交换性对应于词袋假设。
4.3 Generative models
贝叶斯网络的优势在于它们提供了对所观察到的现象的直观描述,即所谓的生成模型,该模型说明了如何通过随机变量(样本)的采样以及它们沿着网络有向边的传播来生成观察结果。变量依赖性和边缘通常可以通过因果关系来证明,这种关系可以重现真实现象或者用作人工变量。
对于Dirichlet-multinomial模型的简单情况,unigram 的生成模型如下所示:
p
⃗
=
D
i
r
(
p
∣
α
)
(
53
)
\vec p=Dir(p|\alpha)\qquad(53)
p=Dir(p∣α)(53)
w
=
M
u
l
t
(
w
∣
p
⃗
)
(
54
)
w=Mult(w|\vec p)\qquad(54)
w=Mult(w∣p)(54)
这意味着,从Dirichlet分布中采样参数p的矢量,然后从参数为p的多项式中采样单词w。 贝叶斯推断的任务是“反转”生成模型并从给定的观察中“生成”参数值,试图应对任何隐藏的变量。 对于示例模型,这已在Eq52中显示,其中隐藏变量p通过对其计算边缘概率(积分)来处理。 但是,只有在特殊情况下才有可能以这种方式得到完整的后验,在下一节中我们将看到如何在像LDA这样的更复杂的模型中进行推理。