04-3Gaussian models

4.5 题外话(Digression):威沙特分布(Wishart distribution)

威沙特分布(Wishart distribution)是将 γ \gamma γ分布(Gamma distrustion)对正定矩阵(positive definite matrices)的推广.(Press 2005, p107) 称:按照重要性和有用性的顺序来排列,在多元统计中,威沙特分布仅次于正态分布.通常用这个模型来对协方差矩阵 Σ \Sigma Σ或者逆矩阵 Λ = Σ − 1 \Lambda=\Sigma^{-1} Λ=Σ1的不确定性来进行建模.

Wishart 分布的概率密度函数定义如下:
W i ( Λ ∣ S , v ) = 1 Z W i ∣ Λ ∣ ( v − D − 1 ) / 2 exp ⁡ ( − 1 2 t r ( Λ S − 1 ) Wi(\Lambda|S,v)=\frac{1}{Z_{Wi}}|\Lambda|^{(v-D-1)/2}\exp(-\frac{1}{2}tr(\Lambda S^{-1}) Wi(Λ∣S,v)=ZWi1∣Λ(vD1)/2exp(21tr(ΛS1)(4.159)
上式中的v也叫做自由度(degrees of freedom),S就是缩放矩阵(scale matrix).稍后会对这些参数的含义给出更多讲解.
这个分布的归一化常数(normalization constant)(需要在整个对称的概率密度矩阵上进行积分)为下面的表达式:
Z W i = 2 v D / 2 Γ D ( v / 2 ) ∣ S ∣ v / 2 Z_{Wi}=2^{vD/2} \Gamma_D(v/2)|S|^{v/2} ZWi=2vD/2ΓD(v/2)Sv/2(4.160)
上式中的 Γ D \Gamma_D ΓD是多元 γ \gamma γ函数(multivariate gamma function):

Γ D ( x ) = π D ( D − 1 ) / 4 ∏ i = 1 D Γ ( x + ( 1 − i ) / 2 ) \Gamma _D(x)= \pi^{D(D-1)/4 }\prod^D_{i=1}\Gamma(x+(1-i)/2) ΓD(x)=πD(D1)/4i=1DΓ(x+(1i)/2)(4.161)
因此 Γ 1 ( a ) = Γ ( a ) \Gamma_1(a)=\Gamma(a) Γ1(a)=Γ(a),以及:
Γ D ( v 0 / 2 ) = ∏ i = 1 D Γ ( v 0 + 1 − i 2 ) \Gamma_D(v_0/2)=\prod^D_{i=1}\Gamma(\frac{v_0+1-i}{2}) ΓD(v0/2)=i=1DΓ(2v0+1i)(4.162)

只有当 v > D − 1 v>D-1 v>D1的时候才存在归一化常数,因此概率密度函数也仅在此时有意义.

Wishart分布和正态分布之间有一定联系.具体来说就是,设 x i ∼ N ( 0 , Σ ) x_i \sim N(0,\Sigma) xiN(0,Σ)为正态分布,那么散点矩阵(scatter matrix) S = ∑ i = 1 N x i x i T S=\sum^N_{i=1}x_ix_i^T S=i=1NxixiT就有一个Wishart分布: S ∼ W i ( Σ , 1 ) S \sim Wi(\Sigma, 1) SWi(Σ,1).因此 E [ S ] = N Σ E[S]=N\Sigma E[S]=NΣ.另外可以得出分布 W i ( S , v ) Wi(S,v) Wi(S,v)的均值(mean)和众数(mode)为:

m e a n = v S , m o d e = ( v − D − 1 ) S mean=vS, mode=(v-D-1)S mean=vS,mode=(vD1)S(4.163)

其中众数(mode)仅当 v > D + 1 v>D+1 v>D+1的时候才存在.
如果D=1,那么Wishart就降回到了 γ \gamma γ分布(Gamma distribution):
W i ( λ ∣ s − 1 , v ) = G a ( λ ∣ v 2 , s 2 ) Wi(\lambda|s^{-1},v)=Ga(\lambda|\frac{v}{2},\frac{s}{2}) Wi(λs1,v)=Ga(λ2v,2s)(4.164)

4.5.1 逆威沙特分布(Inverse Wishart distribution)

在练习2.10中,如果 λ ∼ G a ( a , b ) \lambda\sim Ga(a, b) λGa(a,b)则有 1 λ ∼ I G ( a , b ) \frac{1}{\lambda}\sim IG(a, b) λ1IG(a,b).类似地,如果有 Σ − 1 ∼ W i ( S , v ) \Sigma^{-1} \sim Wi(S, v) Σ1Wi(S,v),则有 Σ ∼ I W ( S − 1 , v + D + 1 ) \Sigma\sim IW(S^{-1}, v+D+1) ΣIW(S1,v+D+1),IW就是逆威沙特分布(inverse Wishart),是对逆 γ \gamma γ分布(inverse Gamma)的多维推广.定义方式为:对于 v > D − 1 , S ≻ 0 v>D-1,S\succ 0 v>D1,S0:

I W ( Σ ∣ S , v ) = 1 Z I W ∣ Σ ∣ − ( v + D + 1 ) / 2 exp ⁡ ( − 1 2 t r ( S − 1 Σ − 1 ) ) (4.165) Z I W = ∣ S ∣ − v / 2 2 v D / 2 Γ D ( v / 2 ) (4.166) \begin{aligned} IW(\Sigma|S,v) &= \frac{1}{Z_{IW}}|\Sigma|^{-(v+D+1)/2}\exp(-\frac{1}{2}tr(S^{-1}\Sigma^{-1})) &\text{(4.165)}\\ Z_{IW}&= |S|^{-v/2}2^{vD/2}\Gamma_D(v/2) &\text{(4.166)} \end{aligned} IW(Σ∣S,v)ZIW=ZIW1∣Σ(v+D+1)/2exp(21tr(S1Σ1))=Sv/22vD/2ΓD(v/2)(4.165)(4.166)

很显然,这个分布有如下的性质:

m e a n = S − 1 v − D − 1 , m o d e = S − 1 v + D + 1 mean =\frac{S^{-1}}{v-D-1} , mode=\frac{S^{-1}}{v+D+1} mean=vD1S1,mode=v+D+1S1(4.167)

如果D=1,这个分布就降到了拟 γ \gamma γ分布了:

I W ( σ 2 ∣ S − 1 , v ) = I G ( σ 2 ∣ ∣ v / 2 , S / 2 ) IW(\sigma^2|S^{-1},v)=IG(\sigma^2||v/2,S/2) IW(σ2S1,v)=IG(σ2∣∣v/2,S/2)(4.168)

此处查看原书图4.16

image-20230818162643357

4.5.2 威沙特分布可视化*

威沙特分布(Wishart)是矩阵的分布,所以很难画出密度函数.不过在二维情况下,可以对其进行取样,使用取样结果矩阵的特征向量来定义一个椭圆,具体如本书4.1.2所述.图4.16是一些样例.

对更高维度的矩阵,就可以投影威沙特分布的边缘分布(marginals).威沙特分布的矩阵的对角元素服从 γ \gamma γ分布,所以也容易投影出来.非对角元素的分布通常就比较难以解出来了,不过可以从分钟抽样矩阵,然后根据经验计算抽样得到的矩阵的分布.可以把抽样得到的矩阵转各自转换成一个相关矩阵(correlation matrix)然后进行蒙特卡洛估计(参考本书2.7),来得到相关系数期望:

E [ R i j ] ≈ 1 S ∑ s = 1 S R ( Σ s ) i j E[R_{ij}]\approx \frac{1}{S}\sum^S_{s=1}R(\Sigma^s)_{ij} E[Rij]S1s=1SR(Σs)ij(4.169)

其中的 Σ ( s ) ∼ W i ( Σ , v ) \Sigma^{(s)} \sim Wi(\Sigma,v) Σ(s)Wi(Σ,v) R ( Σ ) R(\Sigma) R(Σ)就把矩阵 Σ \Sigma Σ转换成了一个相关矩阵:
R i j = Σ i j Σ i i Σ j j R_{ij}=\frac{\Sigma_{ij}}{ \sqrt{\Sigma_{ii}\Sigma_{jj}} } Rij=ΣiiΣjj Σij(4.170)

可以用核密度估计(kernel density estimation,参考本书14.7.2)来对单变量密度 E [ R i j ] E[R_{ij}] E[Rij]生成一个光滑近似来投图.图4.16是一些例子.

4.6 多元正态分布(MVN)的参数推测

之前已经讲的是在已知参数 θ = ( μ , Σ ) \theta=(\mu,\Sigma) θ=(μ,Σ)的时候对一个高斯分布(正态分布)的推测.现在来讨论对这些参数本身的推测.假设数据形式为 x i ∼ N ( μ , Σ ) , i = 1 : N x_i\sim N(\mu,\Sigma),i= 1:N xiN(μ,Σ),i=1:N的全部范围都得到了观测,所以就没有缺失数据(本书11.6.1是讨论在有缺失数据的情况下对多元正态分布(MVN)进行参数估计).简单来说,就是把后验推断分成三部分,首先是计算 p ( μ ∣ D , Σ ) p(\mu|D,\Sigma) p(μD,Σ),然后计算 p ( Σ ∣ D , μ ) p(\Sigma|D,\mu) p(Σ∣D,μ),最后计算联合分布 p ( μ , Σ ∣ D ) p(\mu,\Sigma|D) p(μ,Σ∣D).

4.6.1 μ \mu μ的后验分布

之前说过如何对 μ \mu μ进行最大似然估计(MLE)了,现在说下如何计算其后验,这对于对其本身值的不确定性进行建模很有用.

似然函数形式为:

p ( D ∣ μ ) = N ( x ˉ ∣ μ , 1 N Σ ) p(D|\mu)=N(\bar x|\mu,\frac{1}{N}\Sigma) p(Dμ)=N(xˉμ,N1Σ)(4.171)

为了简化,使用共轭先验(conjugate prior),这里用的是一个高斯分布.具体来说就是如果 p ( μ ) = N ( μ ∣ m 0 , V 0 ) p(\mu)=N(\mu|m_0,V_0) p(μ)=N(μm0,V0),然后就可以推出一个对 μ \mu μ的高斯后验分布,这要基于本书4.4.2.2的结论.这样得到了:

p ( μ ∣ D , Σ ) = N ( μ ∣ m N , V N ) (4.172) V N − 1 = V 0 − 1 + N Σ − 1 (4.173) m N = V N ( Σ − 1 ( N x ˉ ) + V 0 − 1 m 0 ) (4.174) \begin{aligned} p(\mu|D,\Sigma)&= N(\mu|m_N,V_N) &\text{(4.172)}\\ V_N^{-1}&= V_0^{-1}+N\Sigma^{-1} &\text{(4.173)}\\ m_N&=V_N (\Sigma^{-1}(N\bar x)+V_0^{-1}m_0) &\text{(4.174)}\\ \end{aligned} p(μD,Σ)VN1mN=N(μmN,VN)=V01+NΣ1=VN(Σ1(Nxˉ)+V01m0)(4.172)(4.173)(4.174)

这就跟基于有噪音的雷达光电来推测目标位置是一模一样的过程,只不过这时候在推测的是一个分布的均值,而不是有噪音的样本.(对于一个贝叶斯方法来说,参数的不确定性和其他任何事情的不确定性没有区别.)

可以设置 V 0 = ∞ I V_0=\infty I V0=I来建立一个无信息先验.这样则有 p ( μ ∣ D , Σ ) = N ( x ˉ 1 N Σ ) p(\mu|D,\Sigma)=N(\bar x \frac{1}{N}\Sigma) p(μD,Σ)=N(xˉN1Σ),所以后验均值就等于最大似然估计(MLE).另外我们还能发现后验方差降低到了 1 N \frac{1}{N} N1,这是频率视角概率统计(frequentist statistics)的标准结果.

4.6.2 Σ \Sigma Σ的后验分布*

然后说如何计算 p ( Σ ∣ D , μ ) p(\Sigma|D,\mu) p(Σ∣D,μ).似然函数形式如下:
p ( D ∣ μ , Σ ) ∝ ∣ Σ ∣ − N 2 exp ⁡ ( − 1 @ t r ( S μ Σ − 1 ) ) p(D|\mu,\Sigma)\propto |\Sigma|^{-\frac{N}{2}}\exp(-\frac{1}{@}tr(S_{\mu}\Sigma^{-1})) p(Dμ,Σ)∣Σ2Nexp(@1tr(SμΣ1))(4.175)

对应的共轭先验正好是逆威沙特分布,参考4.5.1.还记得这就有下面的概率密度函数(pdf):

I W ( Σ ∣ S 0 − 1 , v 0 ) ∝ ∣ Σ ∣ − ( v 0 + D + 1 ) / 2 exp ⁡ ( − 1 2 t r ( S 0 Σ − 1 ) ) IW(\Sigma|S_0^{-1} ,v_0)\propto |\Sigma|^{-(v_0+D+1)/2} \exp(-\frac{1}{2}tr(S_0\Sigma^{-1})) IW(Σ∣S01,v0)∣Σ(v0+D+1)/2exp(21tr(S0Σ1))(4.176)

上式中 v 0 > D − 1 v_0 > D-1 v0>D1就是自由度(degrees of freedom,缩写为dof),而 S 0 S_0 S0是对称的概率密度矩阵(symmetric pd matrix). S 0 − 1 S_0^{-1} S01就是先验散布矩阵(prior scatter matrix),而 N 0 = ∗ v 0 + D + 1 N_0\overset{*}{=}v_0+D+1 N0=v0+D+1控制了先验强度,所以扮演的角色也就类似于取样规模N.

此处查看原书图4.17

把似然函数和先验乘在一起,就可以发现后验也是一个逆威沙特分布(inverse Wishart):

p ( Σ ∣ D , μ ) ∝ ∣ Σ ∣ N 2 exp ⁡ ( − 1 2 t r ( Σ − 1 S μ ) ∣ Σ ∣ − ( v 0 + D + 1 ) / 2 ) ) exp ⁡ ( − 1 2 t r ( Σ − 1 S 0 ) ) (4.177) = ∣ Σ ∣ − N + ( v 0 + D + 1 ) 2 exp ⁡ ( − 1 2 t r [ Σ − 1 ( S μ + S 0 ) ] ) (4.178) = I W ( Σ ∣ S N , v N ) (4.179) v N = v 0 + N (4.180) S N − 1 = S 0 + S μ (4.181) \begin{aligned} p(\Sigma|D,\mu)&\propto |\Sigma|^{\frac N2}\exp(-\frac12tr(\Sigma^{-1}S_{\mu})|\Sigma|^{-(v_0+D+1)/2})) \exp(-\frac12 tr(\Sigma^{-1}S_0) )&\text{(4.177)}\\ &= |\Sigma|^{-\frac{N+(v_0+D+1)}{2}} \exp(-\frac12tr[\Sigma^{-1}(S_{\mu}+S_0 )] ) &\text{(4.178)}\\ &= IW(\Sigma|S_N,v_N)&\text{(4.179)}\\ v_N&=v_0+N &\text{(4.180)}\\ S_N^{-1}&=S_0+S_{\mu} &\text{(4.181)}\\ \end{aligned} p(Σ∣D,μ)vNSN1∣Σ2Nexp(21tr(Σ1Sμ)∣Σ(v0+D+1)/2))exp(21tr(Σ1S0))=∣Σ2N+(v0+D+1)exp(21tr[Σ1(Sμ+S0)])=IW(Σ∣SN,vN)=v0+N=S0+Sμ(4.177)(4.178)(4.179)(4.180)(4.181)

用文字来表述,就是说后验强度(posterior strength) v N v_N vN就是先验强度(prior strength) v ) v_) v)加上观测次数N,而后验散布矩阵(posterior scatter matrix) S N S_N SN也就是先验散布矩阵(prior scatter matrix) S 0 S_0 S0加上数据散布矩阵(data scatter matrix) S μ S_{\mu} Sμ.

4.6.2.1 最大后验估计(MAP estimation)

通过等式4.7可知 Σ ^ m l e \hat\Sigma_{mle} Σ^mle是一个秩(rank)为 min ⁡ ( N , D ) \min(N,D) min(N,D)的矩阵.如果 N < D N<D N<D,就是一个非满秩的(not full rank),因此就不可逆(uninvertible).而如果 N > D N>D N>D,也可能 Σ ^ \hat\Sigma Σ^是病态的(ill-conditioned)(意思就是近乎奇异矩阵).

要解决这些问题,可以用后验模(posterior mode)或者均值(mean).使用和最大似然估计(MLE)推导类似的技巧,就可以推出最大后验估计(MAP):
Σ ^ m a p = S N v N + D + 1 = S 0 + S μ N 0 + N \hat\Sigma_{map}=\frac{S_N}{v_N+D+1}=\frac{S_0+S_{\mu}}{N_0+N} Σ^map=vN+D+1SN=N0+NS0+Sμ(4.182)

如果用一个不适用均匀先验(improper uniform prior),对应的就是 N 0 = 0 , S 0 = 0 N_0=0,S_0=0 N0=0,S0=0,也就恢复到了最大似然估计(MLE).

如果使用一个适当的含信息先验(proper informative prior),只要 D / N D/N D/N比较大,比如超过0.1的时候,就很被咬了.设 μ = x ˉ \mu=\bar x μ=xˉ,则 S μ = S x ˉ S_{\mu}=S_{\bar x} Sμ=Sxˉ.然后就可以吧最大后验估计(MAP)写成一个先验模(prior mode)和最大似然估计(MLE)的凸组合(convex combination).设 Σ 0 = ∗ S 0 N 0 \Sigma_0\overset{*}{=} \frac{S_0}{N_0} Σ0=N0S0为先验模(prior mode).然后可以把后验模(posterior mode)写成如下形式:

Σ ^ m a p = S 0 + S x ˉ N 0 + N = N 0 N 0 + N S 0 N 0 + N 0 N 0 + N S N = λ Σ 0 + ( 1 − λ ) Σ ^ m l e \hat\Sigma_{map}=\frac{S_0+S_{\bar x}}{N_0+N}=\frac{N_0}{N_0+N}\frac{S_0}{N_0} + \frac{N_0}{N_0+N} \frac{S}{N}=\lambda\Sigma_0+(1-\lambda)\hat\Sigma_{mle} Σ^map=N0+NS0+Sxˉ=N0+NN0N0S0+N0+NN0NS=λΣ0+(1λ)Σ^mle(4.183)

其中的 λ = N 0 N 0 + N \lambda=\frac{N_0}{N_0+N} λ=N0+NN0,控制的是朝向先验收缩(shrinkage)的规模(amount).

这就引出了另外一个问题:先验的那些参数都是哪来的?通常可以通过交叉验证来设置 λ \lambda λ.或者可以使用闭合形式公式(closed-form formula),出自(Ledoit and Wolf 2004b,a; Schaefer and Strimmer 2005),是在使用平方损失(squared loss)的情况下的频率论角度的最优估计(optimal frequentist estimate).关于这是不是对协方差矩阵(covariance matrices)最自然的损失函数(loss function)还有争议,因为忽略了正定约束(positive definite constraint),不过确实能得到一个简单的估计器(estimator),本书配套的PMTK软件中的shrinkcov函数是一个实现.稍后再讨论贝叶斯角度对 λ \lambda λ的估计.

至于先验协方差矩阵(prior covariance matrix) S 0 S_0 S0,可以用下面的(依赖数据的)先验: S 0 = d i a g ( Σ ^ m l e ) S_0=diag(\hat\Sigma_{mle}) S0=diag(Σ^mle).这时候最大后验估计为:
Σ ^ m a p ( i , j ) = { Σ ^ m l e ( i , j ) if  i = j ( 1 − λ ) Σ ^ m l e ( i , j ) otherwise \hat\Sigma_{map}(i,j)=\begin{cases} \hat\Sigma_{mle}(i,j) & \text{if } i=j\\ (1-\lambda)\hat\Sigma_{mle}(i,j) &\text{otherwise}\end{cases} Σ^map(i,j)={Σ^mle(i,j)(1λ)Σ^mle(i,j)if i=jotherwise(4.184)

这样就能发现对角项目等于他们的最大似然估计(MLE),而非对角元素就朝着0收缩了.这也叫收缩估计(shrinkage estimation)或者正则化估计(regularized estimation).

图4.17中就展示了最大后验估计(MAP)的好处.设对一个50维的正态分布进行拟合,分别使用 N = 100 , N = 50 , N = 25 N=100,N=50,N=25 N=100,N=50,N=25个数据点.很明显最大后验分布总是良好状态的(well-conditioned),而不像最大似然估计(MLE)会有病态的情况出现.特别是最大后验估计(MAP)的特征谱(eigenvalue spectrum)会比最大似然估计(MLE)的更接近真是矩阵.不过特征向量(eigenvectors)不受影响.

在后面的章节中,当我们要对高维度数据的协方差矩阵进行拟合的时候,对 Σ \Sigma Σ的正则估计的重要性就很明显了.

4.6.2.2 单变量后验(Univariate posterior)

在一维情况下,似然函数(likelihood)形式如下所示:

p ( D ∣ σ 2 ) ∝ ( σ 2 ) − N / 2 exp ⁡ ( − 1 2 σ 2 ∑ i = 1 N ( x i − μ ) 2 ) p(D|\sigma^2)\propto (\sigma^2)^{-N/2}\exp (-\frac{1}{2\sigma^2}\sum^N_{i=1}(x_i-\mu)^2) p(Dσ2)(σ2)N/2exp(2σ21i=1N(xiμ)2)(4.185)

标准共轭先验(standard conjugate prior)正好就是一个逆 γ \gamma γ分布(inverse Gamma distribution),也就是标量版本的逆威沙特分布(inverse Wishart):
I G ( σ 2 ∣ a 0 , b 0 ) ∝ ( σ 2 ) 1 ( a 0 + 1 ) exp ⁡ ( − b 0 σ 2 ) IG(\sigma^2|a_0,b_0)\propto (\sigma^2)^{1(a_0+1)}\exp(-\frac{b_0}{\sigma^2}) IG(σ2a0,b0)(σ2)1(a0+1)exp(σ2b0)(4.186)

此处参考原书图4.18

把似然函数(likelihood)和先验(prior)乘起来就会发现后验(posterior)也是IG:
p ( σ 2 ∣ D ) = I G ( σ 2 ∣ a N , b N ) (4.187) a N = a 0 + N / 2 (4.188) b N = b 0 + 1 2 ∑ i = 1 N ( x i − μ ) 2 (4.189) \begin{aligned} p(\sigma^2|D)&=IG(\sigma^2|a_N,b_N) &\text{(4.187)}\\ a_N&= a_0+N/2 &\text{(4.188)}\\ b_N&= b_0+\frac{1}{2}\sum^N_{i=1}(x_i-\mu)^2 &\text{(4.189)}\\ \end{aligned} p(σ2D)aNbN=IG(σ2aN,bN)=a0+N/2=b0+21i=1N(xiμ)2(4.187)(4.188)(4.189)
图4.18为图示.

后验的形式不像多元情况下的那样好看,因为有了因子 1 2 \frac{1}{2} 21.这是因为 I W ( σ 2 ∣ s 0 , v 0 ) = I G ( σ 2 ∣ s 0 2 , v 0 2 ) IW(\sigma^2|s_0,v_0)=IG(\sigma^2|\frac{s_0}{2},\frac{v_0}{2}) IW(σ2s0,v0)=IG(σ22s0,2v0).使用逆正态分布 I G ( a 0 , b 0 ) IG(a_0,b_0) IG(a0,b0)的另一个问题是先验同时对 a 0 , b 0 a_0,b_0 a0,b0进行编码(encoded).要避免这些问题,通常从统计学角度来说,都是使用对逆向高斯分布(IG distribution)的替代参数化,也就是(缩放)逆卡方分布((scaled) inverse chi-squared distribution),定义如下所示:
χ − 2 ( σ 2 ∣ v 0 , σ 0 2 ) = I G ( σ 2 ∣ v 0 2 ) v 0 σ 0 2 2 ∝ ( σ 2 ) − v 0 / 2 − 1 exp ⁡ ( − v 0 σ 0 2 2 σ 2 ) \chi^{-2}(\sigma^2|v_0,\sigma_0^2)=IG(\sigma^2|\frac{v_0}{2})\frac{v_0\sigma^2_0}{2}\propto (\sigma^2)^{-v_0/2-1}\exp(-\frac{v_0\sigma^2_0}{2\sigma^2}) χ2(σ2v0,σ02)=IG(σ22v0)2v0σ02(σ2)v0/21exp(2σ2v0σ02)(4.190)

上式中的 v 0 v_0 v0控制了先验的强度,而 σ 2 \sigma^2 σ2对先验的值进行了编码.这样后验则成了:

p ( σ 2 ∣ D , μ ) = χ − 2 ( σ 2 ∣ v N , σ N 2 ) (4.191) v N = v 0 + N (4.192) σ N 2 = v 0 σ 0 2 + ∑ i = 1 N ( x i − μ ) 2 v N (4.193) \begin{aligned} p(\sigma^2|D,\mu)&= \chi^{-2}(\sigma^2|v_N,\sigma^2_N) &\text{(4.191)}\\ v_N&= v_0+N &\text{(4.192)}\\ \sigma^2_N&= \frac{v_0\sigma_0^2+\sum^N_{i=1}(x_i-\mu)^2}{v_N} &\text{(4.193)}\\ \end{aligned} p(σ2D,μ)vNσN2=χ2(σ2vN,σN2)=v0+N=vNv0σ02+i=1N(xiμ)2(4.191)(4.192)(4.193)

可见后验的自由度(dof) v N v_N vN是先验自由度(dof) v 0 v_0 v0加上N,而后验平方和 v n σ N 2 v_n\sigma^2_N vnσN2就是先验平方和 v 0 σ 0 2 v_0\sigma^2_0 v0σ02加上数据的平方和.

可以设 v 0 = 0 v_0=0 v0=0来模拟一个无信息先验(uninformative prior) p ( σ 2 ) ∝ σ − 2 p(\sigma^2)\propto\sigma^{-2} p(σ2)σ2,也很好直观理解,就是对应着零虚拟样本规模(zero virtual sample size).

4.6.3 μ \mu μ Σ \Sigma Σ的后验分布*

现在来讨论一下如何计算 p ( μ , Σ ∣ D ) p(\mu,\Sigma|D) p(μ,Σ∣D).这些结论有点复杂,不过在本书后面的章节会很有用.对于第一次阅读的读者来说,可以先跳过.

4.6.3.1 似然函数(likelihood)

似然函数为:

p ( D ∣ μ , Σ ) = ( 2 π ) − N D / 2 ∣ Σ ∣ − N 2 exp ⁡ ( − N 2 ( x i − μ ) T Σ − 1 ( x i − μ ) ) p(D|\mu,\Sigma) = (2\pi)^{-ND/2}|\Sigma|^{-\frac{N}{2}}\exp(-\frac{N}{2}(x_i-\mu)^T\Sigma^{-1}(x_i-\mu) ) p(Dμ,Σ)=(2π)ND/2∣Σ2Nexp(2N(xiμ)TΣ1(xiμ))(4.194)

很明显:

∑ i = 1 N ( x i − μ ) T Σ − 1 ( x i − μ ) = t r ( Σ − 1 S x ˉ ) + N ( x ˉ − μ ) T Σ − 1 ( x ˉ − μ ) \sum^N_{i=1}(x_i-\mu)^T\Sigma^{-1}(x_i-\mu)=tr(\Sigma^{-1}S_{\bar x})+ N(\bar x-\mu)^T\Sigma^{-1}(\bar x-\mu) i=1N(xiμ)TΣ1(xiμ)=tr(Σ1Sxˉ)+N(xˉμ)TΣ1(xˉμ)(4.195)

因此可以把似然函数写成如下的形式:
p ( D ∣ μ , Σ ) = ( 2 π ) − N D / 2 ∣ Σ ∣ − N 2 exp ⁡ ( − N 2 ( μ − x ˉ ) T Σ − 1 ( μ − x ˉ ) ) (4.196) exp ⁡ ( − N 2 t r ( Σ − 1 S x ˉ ) ) (4.197) \begin{aligned} p(D|\mu,\Sigma)&= (2\pi)^{-ND/2}|\Sigma|^{-\frac{N}{2}}\exp(-\frac{N}{2}(\mu-\bar x)^T\Sigma^{-1} (\mu-\bar x) ) &\text{(4.196)}\\ &\exp(-\frac{N}{2}tr(\Sigma^{-1}S_{\bar x })) &\text{(4.197)} \end{aligned} p(Dμ,Σ)=(2π)ND/2∣Σ2Nexp(2N(μxˉ)TΣ1(μxˉ))exp(2Ntr(Σ1Sxˉ))(4.196)(4.197)
后面会用到这个形式.

4.6.3.2 先验(Prior)

先验形式为:
p ( μ , Σ ) = N ( μ ∣ m 0 , V 0 ) I W ( Σ ∣ S 0 , v 0 ) p(\mu,\Sigma)=N(\mu|m_0,V_0)IW(\Sigma|S_0,v_0) p(μ,Σ)=N(μm0,V0)IW(Σ∣S0,v0)(4.198)

很不幸,这和似然函数不共轭(not conjugate).为什么呢?注意 μ \mu μ Σ \Sigma Σ在似然函数(likelihood)中以非因子形式(non-factorized way)共同出现,因此在后验中也会耦合在一起(coupled together).

上面的先验就也被叫做半共轭(semi-conjugate)或者条件共轭(conditionally conjugate),因为两个条件分布 p ( μ ∣ Σ ) , p ( Σ ∣ μ ) p(\mu|\Sigma),p(\Sigma|\mu ) p(μ∣Σ),p(Σ∣μ)都是独立共轭(individually conjugate)的.要建立一个完全共轭先验(full conjugate prior),需要让 μ , Σ \mu,\Sigma μ,Σ两者相互依赖.所以可以使用下面这样形式的联合分布:

p ( μ , Σ ) = p ( Σ ) p ( μ ∣ Σ ) p(\mu,\Sigma)=p(\Sigma)p(\mu|\Sigma) p(μ,Σ)=p(Σ)p(μ∣Σ)(4.199)

参考一下等式4.197中的似然函数等式,就可以发现自然共轭先验(natural conjugate prior)的形式为正态逆威沙特分布(Normal-inverse-wishart,缩写为 NIW),定义形式如下所示:
N I W ( μ , Σ ∣ m 0 , k 0 , v 0 , S 0 ) = ∗ (4.200) N ( μ ∣ m 0 , 1 k 0 Σ ) × I W ( Σ ∣ S 0 , v 0 ) (4.201) = 1 Z N I W ∣ Σ ∣ 1 2 exp ⁡ ( − k 0 2 μ − m 0 ( ) T Σ − 1 ( μ − m 0 ) ) (4.202) × ∣ Σ ∣ − v 0 + D + 1 2 exp ⁡ ( − 1 2 t r ( Σ − 1 S 0 ) ) (4.203) = 1 Z N I W ∣ Σ ∣ − v 0 + D + 2 2 (4.204) × exp ⁡ ( − k 0 2 ( μ − m 0 ) T Σ − 1 ( μ − m 0 ) − 1 2 t r ( Σ − 1 S 0 ) ) (4.205) Z N I W = 2 V 0 D / 2 Γ D ( v 0 / 2 ) ( 2 π / k 0 ) D / 2 ∣ S 0 ∣ − v 0 / 2 (4.206) \begin{aligned} NIW(\mu,\Sigma|m_0,k_0,v_0,S_0)& \overset{*}{=}& \text{(4.200)}\\ & N(\mu|m_0,\frac{1}{k_0}\Sigma)\times IW(\Sigma|S_0,v_0 ) & \text{(4.201)}\\ &=\frac{1}{Z_{NIW}}|\Sigma|^{\frac{1}{2}}\exp(-\frac{k_0}{2}\mu-m_0()^T\Sigma^{-1}(\mu-m_0)) & \text{(4.202)}\\ &\times |\Sigma|^{-\frac{v_0+D+1}{2}}\exp(-\frac{1}{2}tr(\Sigma^{-1}S_0)) & \text{(4.203)}\\ & = \frac{1}{Z_{NIW}}|\Sigma|^{-\frac{v_0+D+2}{2}} & \text{(4.204)}\\ &\times \exp(-\frac{k_0}{2}(\mu-m_0)^T\Sigma^{-1}(\mu-m_0) -\frac{1}{2}tr(\Sigma^{-1}S_0)) & \text{(4.205)}\\ Z_{NIW}&= 2^{V_0D/2}\Gamma_D(v_0/2)(2\pi/k_0)^{D/2} |S_0|^{-v_0/2} & \text{(4.206)}\\ \end{aligned} NIW(μ,Σ∣m0,k0,v0,S0)ZNIW=N(μm0,k01Σ)×IW(Σ∣S0,v0)=ZNIW1∣Σ21exp(2k0μm0()TΣ1(μm0))×∣Σ2v0+D+1exp(21tr(Σ1S0))=ZNIW1∣Σ2v0+D+2×exp(2k0(μm0)TΣ1(μm0)21tr(Σ1S0))=2V0D/2ΓD(v0/2)(2π/k0)D/2S0v0/2(4.200)(4.201)(4.202)(4.203)(4.204)(4.205)(4.206)

上式中的 Γ D ( a ) \Gamma_D(a) ΓD(a)是多元 γ \gamma γ分布(multivariate Gamma function).
上面这个逆威沙特分布的参数可以通过如下步骤来进行推断: m 0 m_0 m0就是 μ \mu μ的先验均值,而 k 0 k_0 k0就是对这个先验的相信程度, S 0 S_0 S0 是正比于 Σ \Sigma Σ的先验均值,而 v 0 v_0 v0 是对这个先验的相信程度.

参考(Minka 2000f)可以发现,(不适用(improper))无信息先验(uninformative prior)的形式如下所示:
lim ⁡ k → 0 N ( μ ∣ m 0 , Σ / k ) I W ( Σ ∣ S 0 , k ∝ ∣ 2 π Σ ∣ 1 2 ∣ Σ ∣ − ( D + 1 ) / 2 (4.207) ∝ ∣ Σ ∣ − ( D / 2 + 1 ) ∝ N I W ( μ , Σ ∣ 0 , 0 , 0 , 0 I ) (4.208) \begin{aligned} \lim _{k\rightarrow 0} N(\mu|m_0,\Sigma/k)IW(\Sigma|S_0,k&\propto |2\pi\Sigma|^{\frac{1}{2}}|\Sigma|^{-(D+1)/2} &\text{(4.207)}\\ &\propto |\Sigma|^{-(D/2+1)}\propto NIW(\mu,\Sigma|0,0,0,0I) &\text{(4.208)}\\ \end{aligned} k0limN(μm0,Σ/k)IW(Σ∣S0,k∣2πΣ21∣Σ(D+1)/2∣Σ(D/2+1)NIW(μ,Σ∣0,0,0,0I)(4.207)(4.208)

在实践中,一般都是使用弱含信息数据依赖先验(weakly informative data-dependent prior)比较好.常规选择(参考(Chipman et al. 2001, p81), (Fraley and Raftery 2007, p6))是设置 S 0 = d i a g ( S x ˉ ) / N , v 0 = D + 2 S_0=diag(S_{\bar x})/N, v_0=D+2 S0=diag(Sxˉ)/N,v0=D+2来确保 E [ Σ ] = S 0 E[\Sigma]=S_0 E[Σ]=S0,然后设 μ 0 = x ˉ \mu_0=\bar x μ0=xˉ以及 k 0 k_0 k0为比较小的数值,比如0.01.

4.6.3.3 后验

如练习4.11所示,后验可以表示成更新过参数的逆威沙特分布(NIW):
p ( μ , Σ ∣ D ) = N I W ( μ , Σ ∣ m N , k N , v N , S N ) (4.209) m N = k 0 m 0 + N x ˉ k N = k 0 k 0 + N m 0 + N k 0 + N x ˉ (4.210) k N = k 0 + N (4.211) v N = v 0 + N (4.212) S N = S 0 + S x ˉ + k ) N k 0 + N ( x ˉ − m 0 ) ( x ˉ − m 0 ) T (4.213) = S 0 + S + k 0 m 0 m 0 T − k N m N m N T (4.214) \begin{aligned} p(\mu,\Sigma|D)&= NIW(\mu,\Sigma|m_N,k_N,v_N,S_N) &\text{(4.209)}\\ m_N&= \frac{k_0m_0+N\bar x}{k_N} =\frac{k_0}{k_0+N}m_0+\frac{N}{k_0+N} \bar x &\text{(4.210)}\\ k_N&=k_0+N &\text{(4.211)}\\ v_N&=v_0+N &\text{(4.212)}\\ S_N&= S_0+S_{\bar x}+\frac{k_)N}{k_0+N}(\bar x-m_0)(\bar x-m_0)^T &\text{(4.213)}\\ &= S_0+S+k_0m_0m_0^T-k_Nm_Nm_N^T &\text{(4.214)}\\ \end{aligned} p(μ,Σ∣D)mNkNvNSN=NIW(μ,Σ∣mN,kN,vN,SN)=kNk0m0+Nxˉ=k0+Nk0m0+k0+NNxˉ=k0+N=v0+N=S0+Sxˉ+k0+Nk)N(xˉm0)(xˉm0)T=S0+S+k0m0m0TkNmNmNT(4.209)(4.210)(4.211)(4.212)(4.213)(4.214)

上式中我们定义了 S = ∗ ∑ i = 1 N x i x i T S\overset{*}{=} \sum^N_{i=1}x_ix_i^T S=i=1NxixiT,这是一个未中心化的平方和矩阵(uncentered sum-of-squares matrix),相比中心化矩阵这样的更容易进行渐进的增量更新.

结果很直观:后验均值(posterior mean)就是对先验均值(prior mean)和最大似然估计(MLE)的凸组合(convex combination),附带上强度控制项 k 0 + N k_0+N k0+N.而后验散布矩阵(posterior scatter matrix) S N S_N SN就是先验散布矩阵(prior scatter matrix) S 0 S_0 S0加上经验散布矩阵(empirical scatter matrix)KaTeX parse error: Got function '\bar' with no arguments as subscript at position 3: S_\̲b̲a̲r̲ ̲x,再加上由均值不确定性带来的附加项(这也创造了自己的一个虚拟散布矩阵(virtual scatter matrix)).

4.6.3.4 后验模(Posterior mode)

联合分布的众数(mode)如下所示:
$\arg\max p(\mu,\Sigma|D) = (m_N,\frac{S_N}{v_N+D+2}) $(4.215)

如果设置 k 0 = 0 k_0=0 k0=0,就降低(reduce)成了:
$\arg\max p(\mu,\Sigma|D) = (\bar x,\frac{S_0+S_{\bar x}}{v_N+N+D+2}) $(4.216)

对应的估计 Σ ^ \hat \Sigma Σ^几乎和等式4.183所述一样,唯一区别是分母上差了一个1,这是因为这个众数(mode)是联合分布的,而不是边缘分布的.

4.6.3.5 后验边缘分布

Σ \Sigma Σ的后验边缘分布就很简单了,如下所示:

p ( Σ ∣ D ) = ∫ p ( μ , Σ ∣ D ) d μ = I W ( Σ ∣ S N , v N ) p(\Sigma|D) =\int p(\mu,\Sigma|D)d\mu=IW(\Sigma|S_N,v_N) p(Σ∣D)=p(μ,Σ∣D)dμ=IW(Σ∣SN,vN)(4.217)

这个边缘分布的众数(mode)和均值(mean)分别为:

Σ ^ m a p = S N v N + D + 1 , E [ Σ ] = S N v N − D − 1 \hat\Sigma_{map}=\frac{S_N}{v_N+D+1}, E[\Sigma]=\frac{S_N}{v_N-D-1} Σ^map=vN+D+1SN,E[Σ]=vND1SN(4.218)

不难发现对 μ \mu μ的后验边缘分布正好就是一个多元学生T分布:

p ( μ ∣ D ) = ∫ p ( μ , Σ ∣ D ) d Σ = T ( μ ∣ m N , 1 v N -D+1 S N , v N -D+1 ) p(\mu|D)=\int p(\mu,\Sigma|D)d\Sigma = T(\mu|m_N,\frac{1}{v_N-D+1}S_N,v_N-D+1) p(μD)=p(μ,Σ∣D)dΣ=T(μmN,vN-D+1SN,vN-D+1)(4.219)

这是由于学生分布可以表示做多个高斯分布(正态分布)的缩放混合,参考本书等式11.61.

此处参考原书图4.19

4.6.3.6 后验预测

后验预测(posterior predictive)如下所示:
p ( x ∣ D ) = p ( x , D ) p ( D ) p(x|D)=\frac{p(x,D)}{p(D)} p(xD)=p(D)p(x,D)(4.220)

所以很容易用一系列边缘似然函数(marginal likelihood)的比值的形式来进行估算.
结果这个比值也是多元学生T分布:

p ( x ∣ D ) = ∫ ∫ N ( x ∣ μ , Σ ) N I W ( μ , Σ ∣ m N , k N , S N ) d μ d Σ (4.221) = T ( x ∣ m N , k N + 1 k N ( v N − D + 1 ) S N , v N − D + 1 ) (4.222) \begin{aligned} p(x|D)&= \int \int N(x|\mu,\Sigma)NIW(\mu,\Sigma|m_N,k_N,S_N)d\mu d\Sigma &\text{(4.221)}\\ &= T(x|m_N,\frac{k_N+1}{k_N(v_N-D+1)}S_N,v_N-D+1) &\text{(4.222)}\\ \end{aligned} p(xD)=∫∫N(xμ,Σ)NIW(μ,Σ∣mN,kN,SN)dμdΣ=T(xmN,kN(vND+1)kN+1SN,vND+1)(4.221)(4.222)

4.6.3.7 标量数据的后验

现在把上面的结论用到一个特殊情况,即 x i x_i xi是一维的.这些结果在统计领域中有很广泛的应用.如本书4.6.2.2所示,通常可能不适用正常逆威沙特分布(normal inverse Wishart),而是使用正常逆卡方分布(normal inverse chi-squared,缩写为NIX),定义如下所示:

N I χ 2 ( μ , σ 2 ∣ m 0 , k 0 , v 0 , σ 0 2 ) = ∗ N ( μ ∣ m 0 , σ 2 / k 0 ) χ − 2 ( σ 2 ∣ v 0 , σ 0 2 ) (4.223) ∝ ( 1 σ 2 ) ( v 0 + 3 ) / 2 exp ⁡ ( − v 0 σ 0 2 + k 0 ( ] m u − m 0 ) 2 2 σ 2 ) (4.224) \begin{aligned} NI\chi^2(\mu,\sigma^2|m_0,k_0,v_0,\sigma_0^2)& \overset{*}{=}N(\mu|m_0,\sigma^2/k_0)\chi^{-2}(\sigma^2|v_0,\sigma_0^2) &\text{(4.223)} &\propto (\frac{1}{\sigma^2})^{(v_0+3)/2} \exp (-\frac{v_0\sigma_0^2+k_0(]mu-m_0)^2}{2\sigma^2}) &\text{(4.224)} \end{aligned} NIχ2(μ,σ2m0,k0,v0,σ02)=N(μm0,σ2/k0)χ2(σ2v0,σ02)(4.223)(σ21)(v0+3)/2exp(2σ2v0σ02+k0(]mum0)2)(4.224)

图4.19所示为其图像.沿着 μ \mu μ轴,分布形状类似正态分布,而沿着 σ 2 \sigma^2 σ2轴分布形状就像是逆卡方分布( χ − 2 \chi^{-2} χ2);整个联合概率密度函数的轮廓形状就像是压扁的蛋.有意思的是我们会发现 μ \mu μ的形状比较小数值的 σ 2 \sigma^2 σ2有更显著的峰值,这也很好理解,因为数据本身方差小(low variance),就能进行更准确的估计了.

后验如下所示

p ( μ , σ 2 ∣ D ) = N I χ 2 ( μ , σ 2 ∣ m N , k N , v N , σ N 2 ) (4.225) m N = k 0 m 0 + N x ˉ k N (4.226) k N = k 0 + N (4.227) v N = v 0 + N (4.228) v N σ N 2 = v 0 σ 0 2 + ∑ i = 1 N ( x i − x ˉ ) 2 + N k ) k 0 + N ( m 0 − x ˉ ) 2 (4.229) \begin{aligned} p(\mu,\sigma^2|D)&= NI\chi^2(\mu,\sigma^2|m_N,k_N,v_N,\sigma^2_N) &\text{(4.225)} m_N&= \frac{k_0m_0+N\bar x}{k_N} &\text{(4.226)} k_N&= k_0+N &\text{(4.227)} v_N&= v_0+N &\text{(4.228)} v_N\sigma^2_N&= v_0\sigma^2_0+\sum^N_{i=1}(x_i-\bar x)^2+\frac{Nk_)}{k_0+N}(m_0-\bar x)^2 &\text{(4.229)} \end{aligned} p(μ,σ2D)=NIχ2(μ,σ2mN,kN,vN,σN2)(4.225)mN=kNk0m0+Nxˉ(4.226)kN=k0+N(4.227)vN=v0+N(4.228)vNσN2=v0σ02+i=1N(xixˉ)2+k0+NNk)(m0xˉ)2(4.229)

σ 2 \sigma^2 σ2的后验边缘分布为:

p ( σ 2 ∣ D ) = ∫ p ( μ , σ 2 ∣ D ) d μ = χ − 2 ( σ 2 ∣ v N , σ N 2 ) p(\sigma^2|D)=\int p(\mu,\sigma^2|D)d\mu =\chi^{-2}(\sigma^2|v_N,\sigma^2_N) p(σ2D)=p(μ,σ2D)dμ=χ2(σ2vN,σN2)(4.230)

其后验均值为: E [ σ 2 ∣ D ] = v N v N − 2 σ N 2 E[\sigma^2|D]=\frac{v_N}{v_N-2}\sigma^2_N E[σ2D]=vN2vNσN2

μ \mu μ的后验边缘分布为学生T分布,是学生分布的缩放混合形式,如下所示:

$p(\mu|D)= \int p(\mu,\sigma2|D)d\sigma2 =T(\mu|m_N,\sigma^2_N/k_N,v_N) ( 4.231 ) 其后验均值为 : (4.231) 其后验均值为: (4.231)其后验均值为:E[\mu|D]=m_N$

如果我们使用下面的无信息先验,结果会是什么样呢?
p ( μ , σ 2 ) ∝ p ( μ ) p ( σ 2 ) ∝ σ − 2 ∝ N I χ 2 ( μ , σ 2 ∣ μ 0 = 0 , k 0 = 0 , v 0 = − 1 , σ 0 2 = 0 ) p(\mu,\sigma^2)\propto p(\mu)p(\sigma^2)\propto \sigma^{-2}\propto NI\chi^2(\mu,\sigma^2|\mu_0=0,k_0=0,v_0=-1,\sigma^2_0=0) p(μ,σ2)p(μ)p(σ2)σ2NIχ2(μ,σ2μ0=0,k0=0,v0=1,σ02=0)(4.232)

有了上面的先验,后验形式如下所示:

p ( μ , σ 2 ∣ D ) = N I χ 2 ( μ , σ 2 ∣ μ N = x ˉ , k N = N , v N = N − 1 , σ N 2 = 是 2 ) p(\mu,\sigma^2|D)= NI\chi^2(\mu,\sigma^2|\mu_N=\bar x,k_N=N,v_N=N-1,\sigma^2_N=是^2) p(μ,σ2D)=NIχ2(μ,σ2μN=xˉ,kN=N,vN=N1,σN2=2)(4.233)

上式中的:

s 2 = ∗ 1 N − 1 ∑ i = 1 N ( x i − x ˉ ) 2 = N N − 1 σ m l e 2 s^2\overset{*}{=} \frac{1}{N-1}\sum^N_{i=1}(x_i-\bar x)^2 = \frac{N}{N-1}\sigma^2_{mle} s2=N11i=1N(xixˉ)2=N1Nσmle2(4.234)

就是标准取样偏差(sample standard deviation).在本书6.4.2中会说明这是一个对方差的无偏见估计(unbiased estimate).这样后验均值的边缘分布为:

p ( μ ∣ D ) = T ( μ ∣ x ˉ , s 2 N , N − 1 ) p(\mu|D)=T(\mu|\bar x,\frac{s^2}{N},N-1) p(μD)=T(μxˉ,Ns2,N1)(4.235)

μ \mu μ的后验方差为:
v a r [ μ ∣ D ] = v N v N − 2 σ N 2 \mathrm{var}[\mu|D]=\frac{v_N}{v_N-2}\sigma^2_N var[μD]=vN2vNσN2(4.236)

上面这个后验方差的平方根就是均值的标准差(standard error of the mean):

v a r [ μ ∣ D ] ≈ s N \sqrt{ \mathrm{var}[\mu|D]}\approx \frac{s}{\sqrt{N}} var[μD] N s(4.237)

然后均值的估计95%后验置信区间(credible interval)为:

I . 95 ( μ ∣ D ) = x ˉ ± 2 s N I_{.95}(\mu|D)=\bar x \pm 2\frac{s}{\sqrt{N}} I.95(μD)=xˉ±2N s(4.238)

(贝叶斯理论的置信空间在本书的5.2.2有更多讲解,而频率论的置信区间与之对比的内容在本书6.6.1.)

4.6.3.8 贝叶斯T检验

我们要检验一个假设:给定正态分布 x ∼ N ( μ , σ 2 ) x \sim N(\mu,\sigma^2) xN(μ,σ2),对某个未知值 μ 0 \mu_0 μ0(通常都是0), μ ≠ μ 0 \mu \ne \mu_0 μ=μ0,这叫做双面单样本t检验(two-sided, one-sample t-test).简单方法就是检查 μ 0 ∈ I 0.95 + ( μ ∣ D ) \mu_0\in I_{0.95+(\mu|D)} μ0I0.95+(μD)是否成立.如果不成立,则有95%的信心认为 μ ≠ μ 0 \mu\ne \mu_0 μ=μ0.更普遍的做法是检验两对样本是否有同样的均值.更确切来说,设 y i ∼ N ( μ 1 , σ 2 ) , z i ∼ N ( μ 2 , σ 2 ) y_i \sim N(\mu_1,\sigma^2),z_i\sim N(\mu_2,\sigma^2) yiN(μ1,σ2),ziN(μ2,σ2).就可以使用 x i = y i − z i x_i=y_i-z_i xi=yizi来验证是否有 μ = μ 1 − μ 2 > 0 \mu=\mu_1-\mu_2 >0 μ=μ1μ2>0.可以用下面的形式来对这个量进行估计:
$p(\mu>\mu_0|D)= \int^{\infty}_{\mu_0}p(\mu|D)d{\mu} $(4.239)

这也叫做单面成对T检验(one sided paired t-text).(对未配对测试(unpaired test)有类似的方法,对比在二项比例(binomial proportions)上有所不同,本书5.2.3会介绍.)

要计算这个后验,必须要指定一个先验.设用一个无信息先验.如上所述,这样 μ \mu μ的后验边缘分布形式为:

p ( μ ∣ D ) = T ( μ ∣ x ˉ , s 2 N , N − 1 ) p(\mu|D)= T(\mu|\bar x,\frac{s^2}{N},N-1) p(μD)=T(μxˉ,Ns2,N1)(4.240)

然后我们定义下面的T统计(t statistic):

t = ∗ x ˉ − μ 0 s / N t\overset{*}{=} \frac{\bar x -\mu_0}{s/\sqrt{N}} t=s/N xˉμ0(4.241)

期中的分母是均值标准差.然后有:

p ( μ ∣ D ) = 1 − F N − 1 ( t ) p(\mu|D)=1-F_{N-1}(t) p(μD)=1FN1(t)(4.242)

上式中的 F v ( t ) F_v(t) Fv(t)是标准学生T分布 T ( 0 , 1 , v ) T(0,1,v) T(0,1,v)的累积密度函数(cdf).

4.6.3.9 和频率论统计学的联系

如果我们使用了无信息先验,就会发现上面的贝叶斯分析给出的结果和使用频率论方法推导的一样.(关于频率论统计学的内容在本书第六章会有详细讲解.)比如从上面的结果中,会看到有:

μ − x ˉ s / N ∣ D ∼ t N − 1 \frac{\mu-\bar x}{\sqrt{s/N}}|D\sim t_{N-1} s/N μxˉDtN1(4.243)

这和最大似然估计(MLE)的取样分布(sampling distribution)有一样的形式:
μ − x ˉ s / N ∣ μ ∼ t N − 1 \frac{\mu-\bar x}{\sqrt{s/N}}|\mu \sim t_{N-1} s/N μxˉμtN1(4.244)

这是因为学生T分布是关于前两个参数(arguments)对称的(symmetric),所以有 T ( x ˉ ∣ μ , σ 2 , v ) = T ( μ ∣ x ˉ , σ 2 , v ) T(\bar x|\mu,\sigma^2,v)=T(\mu|\bar x,\sigma^2,v) T(xˉμ,σ2,v)=T(μxˉ,σ2,v);因此 μ \mu μ的后验和 x ˉ \bar x xˉ的取样分布有一样的形式.结果导致了频率测试(frequentist test)返回的(单向(one sided))p值(在本书6.6.2中有定义)和贝叶斯方法返回的 p ( μ > μ 0 ∣ D ) p(\mu>\mu_0|D) p(μ>μ0D)一样.具体参考本书配套的PMTK3当中的bayesTtestDemo为例.

尽管看着非常相似,这两个结果还是有不同阐述的:在贝叶斯方法中, μ \mu μ是未知的,而 x ˉ \bar x xˉ是固定的,而在频率论方法中正好相反, X ˉ \bar X Xˉ是未知的,而 μ \mu μ是固定的.使用无信息先验的简单模型时,频率论和贝叶斯方法之间的更多共同点可以参考(Box and Tiao 1973),本书的7.6.3.3也有更多讲解.

4.6.4 未知精度下的传感器融和*

本节会利用4.6.3当中的结论来解决传感器融合的问题,每个测量设备的精确度都不知道.这对本书4.4.2.2的结论进行了泛化,在4.4.2.2里是设测量模型的位置精确度服从正态分布.未知的精确度会导致有定量意义的不同结果,产生一个潜在的多态后验(multi-modal posterior).这里的内容参考了 (Minka 2001e).

假如我们想要从多个来源汇集数据,来估计某个量 μ ∈ R \mu\in R μR,但是信号源的可靠性都不知道.例如有两个不同的测试设备 x 和 y,有不同的精确度: x i ∣ μ ∼ N ( μ , λ x − 1 , y i ∣ μ ∼ N ( μ , λ y − 1 x_i|\mu \sim N(\mu,\lambda_x^{-1},y_i|\mu \sim N(\mu,\lambda_y^{-1} xiμN(μ,λx1,yiμN(μ,λy1.对两个设备各自进行独立测量,就得到了:

x 1 = 1.1 , x 2 = 1.9 , y 1 = 2.9 , y 2 = 4.2 x_1=1.1,x_2=1.9,y_1=2.9,y_2=4.2 x1=1.1,x2=1.9,y1=2.9,y2=4.2(4.245)

μ , p ( μ ) ∝ 1 \mu,p(\mu)\propto 1 μ,p(μ)1使用一个无信息先验(non-imformative prior),使用一个无限宽度的正态分布 p ( μ ) = N ( μ ∣ m 0 = 0 , λ 0 − 1 = ∞ ) p(\mu)=N(\mu|m_0=0,\lambda_0^{-1}=\infty) p(μ)=N(μm0=0,λ01=)来模拟.如果 λ x , λ y \lambda_x,\lambda_y λx,λy都知道了,那么后验就也是正态分布了:

p ( μ ∣ D , λ x , λ y ) = N ( μ ∣ m N , λ N − 1 ) (4.246) λ N = λ 0 + N x λ x + N y λ y (4.247) m N = λ x N x x ˉ + λ y N y y ˉ N x λ x + N y λ y (4.248) \begin{aligned} p(\mu|D,\lambda_x,\lambda_y)&= N(\mu|m_N,\lambda_N^{-1}) &\text{(4.246)}\\ \lambda_N &= \lambda_0 +N_x\lambda_x+N_y\lambda_y &\text{(4.247)}\\ m_N &= \frac{\lambda_xN_x\bar x+\lambda_yN_y\bar y}{N_x\lambda_x+N_y\lambda_y} &\text{(4.248)}\\ \end{aligned} p(μD,λx,λy)λNmN=N(μmN,λN1)=λ0+Nxλx+Nyλy=Nxλx+NyλyλxNxxˉ+λyNyyˉ(4.246)(4.247)(4.248)

上式中的 N x = 2 , N y = 2 N_x=2,N_y=2 Nx=2,Ny=2分别是x和y的观测次数,而 x ˉ = 1 N x ∑ i = 1 N x i = 1.5 , y ˉ = 1 N y ∑ i = 1 N y i = 3.5 \bar x =\frac{1}{N_x}\sum^N_{i=1}x_i=1.5,\bar y =\frac{1}{N_y}\sum^N_{i=1}y_i=3.5 xˉ=Nx1i=1Nxi=1.5,yˉ=Ny1i=1Nyi=3.5.这是因为后验精度(posterior precision)是测量精度的综合,而后验均值是先验均值(这里是0)和数据均值的加权和.

不过测试精度还是不知道啊.开始用最大似然估计来估计一下吧.对数似然函数(log-likelihood)为:

l ( μ , λ x , λ y ) = log ⁡ λ x − λ x 2 ∑ i ( x i − μ ) 2 + log ⁡ λ y − λ y 2 ∑ i ( y i − μ ) 2 l(\mu,\lambda_x,\lambda_y)=\log \lambda_x-\frac{\lambda_x}{2}\sum_i(x_i-\mu)^2+\log \lambda_y-\frac{\lambda_y}{2}\sum_i(y_i-\mu)^2 l(μ,λx,λy)=logλx2λxi(xiμ)2+logλy2λyi(yiμ)2(4.249)

解出下面的联立方程,就能得到最大似然估计(MLE)了:

∂ l ∂ μ = λ x N x ( x ˉ − μ ) + λ y N y ( y ˉ − μ ) = 0 (4.250) ∂ l ∂ λ x = 1 λ x − 1 N x ∑ i = 1 N x ( x i − μ ) 2 = 0 (4.251) ∂ l ∂ λ y = 1 λ y − 1 N y ∑ i = 1 N y ( y i − μ ) 2 = 0 (4.252) \begin{aligned} \frac{\partial l}{\partial \mu} &= \lambda_x N_x(\bar x- \mu)+\lambda_y N_y(\bar y-\mu)=0 &\text{(4.250)}\\ \frac{\partial l}{\partial \lambda_x} &= \frac{1}{\lambda_x}-\frac{1}{N_x}\sum^{N_x}_{i=1}(x_i-\mu)^2=0 &\text{(4.251)}\\ \frac{\partial l}{\partial \lambda_y} &= \frac{1}{\lambda_y}-\frac{1}{N_y}\sum^{N_y}_{i=1}(y_i-\mu)^2=0 &\text{(4.252)}\\ \end{aligned} μlλxlλyl=λxNx(xˉμ)+λyNy(yˉμ)=0=λx1Nx1i=1Nx(xiμ)2=0=λy1Ny1i=1Ny(yiμ)2=0(4.250)(4.251)(4.252)

解出来就是:

μ ^ = N x λ ^ x x ˉ + N y λ ^ y y ˉ N x λ ^ y + N y λ ^ y (4.253) 1 λ ^ x = 1 N x ∑ i ( x i − μ ^ ) 2 (4.254) 1 λ ^ y = 1 N y ∑ i ( y i − μ ^ ) 2 (4.255) \begin{aligned} \hat \mu &= \frac { N_x\hat \lambda_x \bar x+N_y\hat\lambda_y\bar y}{N_x\hat\lambda_y +N_y\hat \lambda_y } &\text{(4.253)}\\ \frac{1}{\hat\lambda_x}&= \frac{1}{N_x}\sum_i (x_i-\hat \mu)^2 &\text{(4.254)}\\ \frac{1}{\hat\lambda_y}&= \frac{1}{N_y}\sum_i (y_i-\hat \mu)^2 &\text{(4.255)}\\ \end{aligned} μ^λ^x1λ^y1=Nxλ^y+Nyλ^yNxλ^xxˉ+Nyλ^yyˉ=Nx1i(xiμ^)2=Ny1i(yiμ^)2(4.253)(4.254)(4.255)

很明显, μ \mu μ的最大似然估计(MLE)与后验均值 m N m_N mN有同样的形式.

使用固定点迭代(fixed point iteration)就可以解出来了.首先初始化估计 λ x = 1 / s x 2 , λ y = 1 / s y 2 \lambda_x=1/s_x^2,\lambda_y=1/s_y^2 λx=1/sx2,λy=1/sy2,其中的 s x 2 = 1 N x ∑ i = 1 N x ( x i − x ˉ ) 2 = 0.16 , s y 2 = 1 N y ∑ i = 1 N y ( y i − y ˉ ) 2 = 0.36 s_x^2=\frac{1}{N_x}\sum^{N_x}_{i=1}(x_i-\bar x)^2=0.16,s_y^2=\frac{1}{N_y}\sum^{N_y}_{i=1}(y_i-\bar y)^2=0.36 sx2=Nx1i=1Nx(xixˉ)2=0.16,sy2=Ny1i=1Ny(yiyˉ)2=0.36.
然后就解出来了 μ ^ = 2.1154 \hat \mu =2.1154 μ^=2.1154,所以有 p ( μ ∣ D , λ ^ x , λ ^ y ) = N μ ∣ 2.1154 , 0.0554 ) p(\mu|D,\hat \lambda_x,\hat \lambda_y)=N\mu|2.1154,0.0554) p(μD,λ^x,λ^y)=Nμ∣2.1154,0.0554).如果现在进行迭代,最终会收敛到: λ ^ x = 1 / 0.1662 , λ ^ y = 1 / 4.0509 , p ( μ ∣ D , λ ^ x , λ ^ y ) = N ( μ ∣ , 1.5788 , 0.0798 ) \hat \lambda_x=1/0.1662,\hat \lambda_y=1/4.0509,p(\mu|D,\hat \lambda_x,\hat \lambda_y)= N(\mu|,1.5788,0.0798) λ^x=1/0.1662,λ^y=1/4.0509,p(μD,λ^x,λ^y)=N(μ,1.5788,0.0798).

对这个后验的插值估计如图4.20(a)所示.每个传感器的权重是根据其估计误差赋予的.由于估计误差标明传感器y远不如传感器x可靠,所以就有 E [ μ ∣ D λ ^ x , λ ^ y ] ≈ x ˉ E[\mu|D\hat \lambda_x,\hat \lambda_y]\approx \bar x E[μDλ^x,λ^y]xˉ,实际上就是忽略了传感器y.

接下来我们用贝叶斯方法来来积分求未知精度,而不对其进行估计.也就是要计算:

p ( μ ∣ D ) ∝ p ( μ ) [ ∫ p ( D x ∣ μ , λ x ) p ( λ x ∣ μ ) d λ x ] [ ∫ p ( D y ∣ μ , λ y ) p ( λ y ∣ μ ) d λ y ] p(\mu|D)\propto p(\mu)[\int p(D_x|\mu,\lambda_x)p(\lambda_x|\mu)d\lambda_x][\int p(D_y|\mu,\lambda_y)p(\lambda_y|\mu)d\lambda_y] p(μD)p(μ)[p(Dxμ,λx)p(λxμ)dλx][p(Dyμ,λy)p(λyμ)dλy](4.256)

使用无信息Jeffrey先验(uninformative Jeffrey’s priors) p ( μ ) ∝ 1 , p ( λ x ∣ μ ) ∝ 1 / λ x , p ( λ y ∣ m u ) ∝ 1 / λ y p(\mu)\propto 1,p(\lambda_x|\mu)\propto 1/\lambda_x,p(\lambda_y|mu)\propto 1/\lambda_y p(μ)1,p(λxμ)1/λx,p(λymu)1/λy.x和y两项对称,所以只看其中一个就可以了.关键的积分步骤是:

I = ∫ p ( D x ∣ μ , λ x ) p ( λ x ∣ μ ) d λ x ∝ ∫ λ x − 1 ( N x λ x ) N x / 2 (4.257) exp ⁡ ( − N x 2 λ x ( x ˉ − μ ) 2 − N x 2 s x 2 λ x ) d λ x (4.258) \begin{aligned} I= \int p(D_x|\mu,\lambda_x)p(\lambda_x|\mu)d\lambda_x \propto & \int \lambda_x^{-1}(N_x\lambda_x)^{N_x/2} &\text{(4.257)} & \exp( -\frac{N_x}{2}\lambda_x(\bar x-\mu)^2-\frac{N_x}{2}s^2_x\lambda_x )d\lambda_x &\text{(4.258)} \end{aligned} I=p(Dxμ,λx)p(λxμ)dλxλx1(Nxλx)Nx/2(4.257)exp(2Nxλx(xˉμ)22Nxsx2λx)dλx(4.258)

利用 N x = 2 N_x=2 Nx=2来简化到:

I = ∫ λ x − 1 λ x 1 exp ⁡ ( − λ x [ ( x ˉ − μ ) 2 + s x 2 ] ) d λ x I=\int \lambda_x^{-1}\lambda_x^1\exp(-\lambda_x[(\bar x-\mu)^2+s_x^2])d\lambda_x I=λx1λx1exp(λx[(xˉμ)2+sx2])dλx(4.259)

看出来了吧,这个和一个非正则 γ \gamma γ密度函数(unnormalized Gamma density)的积分成正比:

G a ( λ ∣ a , b ) ∝ λ a − 1 e − λ b Ga(\lambda|a,b)\propto \lambda^{a-1}e^{-\lambda b} Ga(λa,b)λa1eλb(4.260)

其中的 a = 1 , b = ( x ˉ − μ ) 2 + s x 2 a=1,b=(\bar x -\mu)^2+s^2_x a=1,b=(xˉμ)2+sx2.因此这个积分也就和 γ \gamma γ分布的归一化常数(normalizing constant) Γ ( a ) b − a \Gamma(a)b^{-a} Γ(a)ba成正比,就得到了:

∝ ∫ p ( D x ∣ μ , λ x ) p ( λ x ∣ μ ) d λ x ∝ [ ( x ˉ − μ ) 2 + s x 2 ] − 1 \propto \int p(D_x|\mu,\lambda_x)p(\lambda_x|\mu)d\lambda_x \propto [(\bar x -\mu)^2+s_x^2]^{-1} p(Dxμ,λx)p(λxμ)dλx[(xˉμ)2+sx2]1(4.261)

然后后验则成了:

p ( μ ∣ D ) ∝ 1 ( x ˉ − μ ) 2 + s x 2 1 ( y ˉ − μ ) 2 + s y 2 p(\mu|D)\propto \frac{1}{(\bar x -\mu)^2+s^2_x} \frac{1}{(\bar y -\mu)^2+s^2_y} p(μD)(xˉμ)2+sx21(yˉμ)2+sy21(4.262)

具体的后验如图4.20(b)所示.可以看到有两个众数(mode),分别在 x ˉ = 1.5 , y ˉ = 3.5 \bar x=1.5, \bar y=3.5 xˉ=1.5,yˉ=3.5这两个位置.对应的就是x传感器比y传感器更精确.第一个众数(mode)的权重更高,因为x传感器给出的数据互相更接近,所以看上去就是这个传感器更可靠.(很明显不可能两个都可靠,因为他们给出的值都不一样的.)不过贝叶斯的方案保持了开放性,就是始终保持了y传感器可能更可靠的概率;从两次测量,其实还不能说就按照差值估计得到的结果一样来选择x传感器,这个结果可能过分有信心了,后验太窄了.

r o p t o p ( μ ) [ ∫ p ( D x ∣ μ , λ x ) p ( λ x ∣ μ ) d λ x ] [ ∫ p ( D y ∣ μ , λ y ) p ( λ y ∣ μ ) d λ y ] ropto p(\mu)[\int p(D_x|\mu,\lambda_x)p(\lambda_x|\mu)d\lambda_x][\int p(D_y|\mu,\lambda_y)p(\lambda_y|\mu)d\lambda_y] roptop(μ)[p(Dxμ,λx)p(λxμ)dλx][p(Dyμ,λy)p(λyμ)dλy](4.256)

使用无信息Jeffrey先验(uninformative Jeffrey’s priors) p ( μ ) ∝ 1 , p ( λ x ∣ μ ) ∝ 1 / λ x , p ( λ y ∣ m u ) ∝ 1 / λ y p(\mu)\propto 1,p(\lambda_x|\mu)\propto 1/\lambda_x,p(\lambda_y|mu)\propto 1/\lambda_y p(μ)1,p(λxμ)1/λx,p(λymu)1/λy.x和y两项对称,所以只看其中一个就可以了.关键的积分步骤是:

I = ∫ p ( D x ∣ μ , λ x ) p ( λ x ∣ μ ) d λ x ∝ ∫ λ x − 1 ( N x λ x ) N x / 2 (4.257) exp ⁡ ( − N x 2 λ x ( x ˉ − μ ) 2 − N x 2 s x 2 λ x ) d λ x (4.258) \begin{aligned} I= \int p(D_x|\mu,\lambda_x)p(\lambda_x|\mu)d\lambda_x \propto & \int \lambda_x^{-1}(N_x\lambda_x)^{N_x/2} &\text{(4.257)} & \exp( -\frac{N_x}{2}\lambda_x(\bar x-\mu)^2-\frac{N_x}{2}s^2_x\lambda_x )d\lambda_x &\text{(4.258)} \end{aligned} I=p(Dxμ,λx)p(λxμ)dλxλx1(Nxλx)Nx/2(4.257)exp(2Nxλx(xˉμ)22Nxsx2λx)dλx(4.258)

利用 N x = 2 N_x=2 Nx=2来简化到:

I = ∫ λ x − 1 λ x 1 exp ⁡ ( − λ x [ ( x ˉ − μ ) 2 + s x 2 ] ) d λ x I=\int \lambda_x^{-1}\lambda_x^1\exp(-\lambda_x[(\bar x-\mu)^2+s_x^2])d\lambda_x I=λx1λx1exp(λx[(xˉμ)2+sx2])dλx(4.259)

看出来了吧,这个和一个非正则 γ \gamma γ密度函数(unnormalized Gamma density)的积分成正比:

G a ( λ ∣ a , b ) ∝ λ a − 1 e − λ b Ga(\lambda|a,b)\propto \lambda^{a-1}e^{-\lambda b} Ga(λa,b)λa1eλb(4.260)

其中的 a = 1 , b = ( x ˉ − μ ) 2 + s x 2 a=1,b=(\bar x -\mu)^2+s^2_x a=1,b=(xˉμ)2+sx2.因此这个积分也就和 γ \gamma γ分布的归一化常数(normalizing constant) Γ ( a ) b − a \Gamma(a)b^{-a} Γ(a)ba成正比,就得到了:

∝ ∫ p ( D x ∣ μ , λ x ) p ( λ x ∣ μ ) d λ x ∝ [ ( x ˉ − μ ) 2 + s x 2 ] − 1 \propto \int p(D_x|\mu,\lambda_x)p(\lambda_x|\mu)d\lambda_x \propto [(\bar x -\mu)^2+s_x^2]^{-1} p(Dxμ,λx)p(λxμ)dλx[(xˉμ)2+sx2]1(4.261)

然后后验则成了:

p ( μ ∣ D ) ∝ 1 ( x ˉ − μ ) 2 + s x 2 1 ( y ˉ − μ ) 2 + s y 2 p(\mu|D)\propto \frac{1}{(\bar x -\mu)^2+s^2_x} \frac{1}{(\bar y -\mu)^2+s^2_y} p(μD)(xˉμ)2+sx21(yˉμ)2+sy21(4.262)

具体的后验如图4.20(b)所示.可以看到有两个众数(mode),分别在 x ˉ = 1.5 , y ˉ = 3.5 \bar x=1.5, \bar y=3.5 xˉ=1.5,yˉ=3.5这两个位置.对应的就是x传感器比y传感器更精确.第一个众数(mode)的权重更高,因为x传感器给出的数据互相更接近,所以看上去就是这个传感器更可靠.(很明显不可能两个都可靠,因为他们给出的值都不一样的.)不过贝叶斯的方案保持了开放性,就是始终保持了y传感器可能更可靠的概率;从两次测量,其实还不能说就按照差值估计得到的结果一样来选择x传感器,这个结果可能过分有信心了,后验太窄了.

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值